doudoukiki
注册会员

初级会员
UID 64173
精华
0
积分 67
帖子 55
金钱 67 喜悦币
威望 0
人脉 0
阅读权限 20
注册 2005-5-19
状态 离线
|
[推荐阅读] 请教mysql 5.0 子查询问题
很多不一样,特别是UPDATE和INSERT,最近刚好在解决这个问题,用adodb就要按照adodb的规则来做,它能帮你构造正确的sql语句。比如
$db->Execute("UPDATE my_user SET username='doudou\'kiki',age='29' WHERE uid='1'");
这样可能在mysql很正常但是在其它数据库就有问题,比如在access就可能有两个问题,一是access转义单引号是''两个单引号而不是\',二是像age和uid这样的字段类型如果是数字类型,sql语句加单引号就会报类型不符合的错误。
正确的做法是使用AutoExecute():
$user['username'] = "doudou\'kiki";
$user['age'] = 29;
$db->AutoExecute('my_user',$user,'UPDATE',"uid=1");
要注意的情况还有字符转义和LIMIT,总之一定要把ADODB的各个常用方法搞熟悉,尽量使用adodb的方法执行sql,避免直接使用固定的sql语句,像上面那句update语句。
|
|