php 插入语句

来源:百度知道 编辑:UC知道 时间:2024/06/21 03:37:34
$strsql="INSERT INTO 'member'('userId', 'userPwd', 'userEmail','userReg') VALUES('$uid', '$pwd', '$email',now())";

为什么我使用“ ' ” 时插入数据就出错“ ` ”就能正常运行。?

$strsql="INSERT INTO `member`(`userId`, `userPwd`, `userEmail`,`userReg`) VALUES('$uid', '$pwd', '$email',now())";

这样就是正常的。

建议你使用如下语句:
$strsql="INSERT INTO member(userId, userPwd, userEmail,userReg) VALUES('$uid', '$pwd', '$email',now())";

MYSQL数据库为了让数据库设计者对数据库表和字段的名字更加自由,允许随便取名,增加了这个语法:可以用``把表名和字段名括起来,MSSQL使用[]扩,原理都相同。

但是我建议大家不要使用特殊名字、汉字作为表名和字段名,这样你的SQL可以在任何数据库下运行,以后数据库改变以后程序只作为轻微变动。

php一般都是和mysql结合的,而mysql的sql插入语句为:
insert into tablename (cols1,cols2...) values (val1,val2...);

建议你使用:
$strsql = sprintf("INSERT INTO `member` SET userId = %u, userPwd = '%s', userEmail = '%s', userReg = NOW()", $uid, $pwd, $email
);
废话不多数了。。
格式化出一个标准的sql语句,可读性和安全性都会比较好