PHP MySQL INSERT INTO解析错误

时间:2014-05-13 10:46:07

标签: php mysql sql joomla

我有一个将Joomla 1.0内容移动到Joomla 3.2内容的有趣任务。我写了一些类别的脚本,工作得很好。现在我正在为文章移植脚本,我在这个MySQL查询中不断收到错误:

$qr = "INSERT INTO nlqov_content 

(id, asset_id, title, alias, introtext, fulltext, state, catid,
 created, created_by, created_by_alias, modified, modified_by,
 checked_out, checked_out_time, publish_up, publish_down, images,
 urls, attribs, version, ordering, metakey, metadesc, access,
 hits, metadata, featured, language, xreference
) 

VALUES 

(7,125,'Welcome to Joomla!','welcome-to-joomla','', '', 0, 61, '2004-06-12 11:54:06', 
62, 'Web Master', '2004-06-12 12:33:27',62,0, '0000-00-00 00:00:00', '2004-01-01 00:00:00', 
'0000-00-00 00:00:00', '{"image_intro":""}', '{"urla":false}','{"show_title":""}', 
 1, 1, '', '', 1, 10, '{"robots":"","author":"","rights":"","xreference":""}', 0, '*', '' )

哪些错误:

  

您的SQL语法有错误;检查手册   对应于您的MySQL服务器版本,以便使用正确的语法   靠近'fulltext,state,catid,created,cr'的第1行 - error_num:1064

我无法找出该查询的错误。我检查了数据类型,它们很好。

我省略了一些JSON数据,以便代码更清晰。

如果有人可以提供帮助,我会很高兴的。这很可能是眼睛疲惫的错误,所以很抱歉:)

2 个答案:

答案 0 :(得分:4)

fulltext是MySQL中的reserved word。要么使用反引号来逃避它,要么使用其他名称。

INSERT INTO nlqov_content (..., `fulltext`, ... 

答案 1 :(得分:1)

全文是mysql关键字使用像这样的背山雀

$qr = "INSERT INTO nlqov_content 

(`id`, `asset_id`, `title`,`alias`, `introtext`, `fulltext`,....)