2012-02-15 105 views
2

我试图使一个MySQL插入这样一个在这里MySQL的INSERT查询语法错误

<http://www.w3schools.com/php/php_mysql_insert.asp > 
    INSERT INTO table_name (column1, column2, column3,...) VALUES (value1, value2, value3,...) 

我想下面的值插入到表的用户群。

54007033331, Codi Y, Male, pub, http://google.com/ggg.jpg 


INSERT INTO userbase (id,name,gender,publicity,pic) VALUES (54007033331, Codi Y, Male, pub, http://google.com/ggg.jpg) 

MySQL query failed: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'Y, Male, pub, http://google.com/ggg.jpg)' at line 1 

任何人都可以请指出我正确的方向如何解决这个语法错误?

+1

老兄,字符串需要在mysql(和大多数其他语言)中引用。 – aroth 2012-02-15 00:14:41

回答

7

您应该在查询中正确引用字符串和字符值。

INSERT INTO userbase (id,display,gender,publicity,pic) 
VALUES (54007033331, 'Codi Y', 'Male', 'pub', 'http://google.com/ggg.jpg') 
+0

啊......天才 – YoYoMa 2012-02-15 00:16:03

1

是的,把引号括起来的字符串值。

+0

thx快速响应! – YoYoMa 2012-02-15 00:15:23

1

不知道你的列类型我不能肯定,但我会大胆地猜测,对于所有的值栏的第一列是字符串和值需要使用单引号标注:

INSERT INTO userbase (id,display,gender,publicity,pic) 
    VALUES (54007033331, 'Codi Y', 'Male', 'pub', 'http://google.com/ggg.jpg') 

但如果你在编程这样做,你应该使用占位符:

INSERT INTO userbase (id,display,gender,publicity,pic) 
    VALUES (?, ?, ?, ?, ?) 

和值绑定。