对于我来说,有一个老的mysql问题我解决不了,它在一些mysql表中保存重复的空行
这是我的表结构:当我尝试这样查询时:
$db->sql_query("INSERT INTO `table_donate` values (`did`,`name`,`username`,`user_email`,`donate_amount`,`donate_time`,`reveal_info`,`reason`) , (NULL,'".$info[name]."','".$info[username]."','".$info[user_email]."','".$price."','".$ctime."','1','$reason')"
) or die(mysql_error());在运行上述查询后只保存了两行
我想知道我如何解决这个问题!?!
发布于 2010-12-08 14:45:33
这就是你想要做的:
INSERT INTO `table_donate` (`did`,`name`,`username`,`user_email`,`donate_amount`,`donate_time`,`reveal_info`,`reason`)
values (NULL,'".$info[name]."','".$info[username]."','".$info[user_email]."','".$price."','".$ctime."','1','$reason')您需要将表列放在values符号之前。之后,Mysql将尝试插入所有内容。
或者,如果要将数据插入到每一列中,则首先不需要列名。
发布于 2010-12-08 14:45:34
括号中VALUES后面的任何内容都将被插入。您有两个用逗号分隔的要插入的()项目列表,因此插入了两行。
MySQL中INSERT语句的syntax为
INSERT INTO table (col1, col2, ...) VALUES (val1, val2, ...)尝试一下,而不是你现在所拥有的
$db->sql_query("INSERT INTO `table_donate` (`did`,`name`,`username`,`user_email`,`donate_amount`,`donate_time`,`reveal_info`,`reason`) values (NULL,'".$info[name]."','".$info[username]."','".$info[user_email]."','".$price."','".$ctime."','1','$reason')") or die(mysql_error());https://stackoverflow.com/questions/4384834
复制相似问题