mysql 插入string类型变量时候,需要注意的问题,妈的,害我想了好几个小时!!
很多人在用php+MySQL做网站往数据库插入数据时发现如下错误:
注册失败!Unknown column '1a' in 'field list'
结果发现用数字提交是没有问题的,其他如char型就有问题了。
相信小伙伴又坚信SQL语句没写错,那么问题出在哪了。
我们来看下我的SQL语句:
--往user表(user和pass列)插入数据,
$sql="INSERT INTO user(user,pass) values($user,$pass)";
当我们如int型数据时间,sql在数据库执行的是
insert into user(user,pass) values(001,001);
然而当执行char型号数据时,SQL语句变成了:
insert into user(user,pass) values(abc,abc);
现在大家能看出问题了吧,原因是char型要加''符号。
我们将SQL语句改为:
$sql="INSERT INTO user(user,pass) values('".$user."','".$pass."')";
即可。