用户
 找回密码
 入住 CI 中国社区
搜索
查看: 1682|回复: 3
收起左侧

[讨论/交流] 大家都用哪种方法操作数据库;

[复制链接]
发表于 2013-6-28 09:53:30 | 显示全部楼层 |阅读模式
大家操作数据库的时候是用那种操作方法比较好:
第一种:$this->db->insert('users', $data);
第二种: $this->db->query("INSERT INTO user ..."); //里面直接写sql语句;
他们都有什么优缺点

发表于 2013-6-28 11:51:34 | 显示全部楼层
我也在纠结哪个好。  
哪个方便用哪个。也不知道有什么优缺点
发表于 2013-6-28 16:59:46 | 显示全部楼层
亲,这个不是哪个好不好的问题,
$this->db->insert('users', $data);这个方法能组合SQL,并对字段安全性过滤,防注入,你的query要自己写,安全性相对较差。
如果只是insert的话,最好用他这个方法吧,用Query的话还得自己组合sql语句。
如果是update,判断条件不复杂的话,也可以用$this->db->update('users', $data,$where);
这几个方法的精髓是:简单,高效,安全
发表于 2013-6-28 17:09:53 | 显示全部楼层
本帖最后由 niudongwei 于 2013-6-28 17:11 编辑

看实际情况而定。。。复杂的查询就直接写SQL;
简单的插入,更新,用CI的方式更方便

比如:

$sql = "update users set email = ?, `name` = ?, phone = ? where uid = ?";

$query = $this->db->query($sql, array($email, $name, $phone, $uid));

return $this->db->affected_rows() > 0;

本版积分规则