天天看点

单记录的表设计

场景:有很多网站的表里面只会存在一条记录,如网站配置表,服务器发送邮件配置表等

单记录的表设计

create table `siteconf` (  

  `id` int(11) unsigned not null auto_increment,  

  `code` varchar(40) not null default '' comment '表单元素名称',  

  `value` varchar(200) default null comment '表单值',  

  primary key (`id`),  

  unique key `form_name` (`code`)  

) engine=innodb default charset=utf8;  

记录示例

单记录的表设计

记录

单记录的表设计

public function getsiteinfo(){  

    $sql = "select * from siteconf ;";  

    $list = $this->db->findall($sql);  

    $result = array();  

    foreach($list as $info){  

        $result[$info['code']] = $info['value'];  

    }  

    return $result;  

}  

//保存或修过信息  

public function updatesiteinfo($formdata)  

{  

    foreach ($formdata as $name => $val) {  

        $sql = "update siteconf set value='$val' where code='{$name}'";  

        $this->db->execute($sql);  

注意事项:code值和页面表单name一致

单记录的表设计

<input type="text" value="<?php echo $info['name']; ?>" name="name">  

 撒飞洒的