2014-04-09 92 views
0

我真的不知道发生了什么插入查询不适合我。插入查询不在mysql中工作

$query_getgreenyear = "INSERT INTO `greenityear` `ConsolidateYear` VALUES ('".$sentdata."')"; 

在$ sentdata的值是(“A”,“B”)和用于ConsolidateYear数据类型为varchar.I需要这个值要被插入到数据库中。 但我得到错误 您在第1行的'ConsolidateYear VALUES('('A','B')')'附近有一个SQL语法错误。 请在这方面帮助我。 我是数据库活动的新手。

回答

0

您忘记了为您的列名称添加bracket()

试试这个:

$query_getgreenyear = "INSERT INTO `greenityear` (`ConsolidateYear`) 
VALUES ('".$sentdata."')"; 
0

请大家看看MySQL Reference Manual

你需要在你的INSERT语句括号包围你的列名:

$query_getgreenyear = "INSERT INTO `greenityear` (`ConsolidateYear`) VALUES ('".$sentdata."')"; 

而且我会强烈建议你使用准备好的语句,通过你的MySQL扩展提供了(至少,如果你不使用删除的mysql_connect)。这可以防止SQL注入。

+0

@Thanks所有..得到了我的错误。 :) – Harsha

0
INSERT INTO `greenityear` (`ConsolidateYear`) VALUES (...) 

但是,你真的应该使用准备好的语句,而不是像你一样构造语句。

0

正确的语法是

INSERT INTO `tablename` (`columnname1`,`columnname2`) VALUES ('value1','value2') 

所以你的例子是这样的:

$query_getgreenyear = "INSERT INTO `greenityear` (`ConsolidateYear`) VALUES ('".$sentdata."')";