2015-02-10 61 views
0

我有以下查询工作正常:为什么我的简单sql查询不起作用?

SET @var := 'test'; 

INSERT INTO yi5vu_roksprocket_items (module_id, provider, params) 
VALUES ('122', 'simple', @var) 

但是,如果我改变变量如下面写它不再起作用。

SET @var := '{"_article_title":"Simple Item 1","strips_item_title":"-none-","strips_item_image":"{'type':'mediamanager','path':'http:\/\/i.imgur.com\/fenrJmj.png','preview':'','link':'index.php?option=com_media&view=images&layout=default&tmpl=component&e_name=items_simple_1__params_strips_item_image'}","strips_item_link":"-default-","strips_item_description":"<html><body><div id=\"d_clip_button1\" class=\"btn btn-primary\" data-clipboard-text=\"[img]http:\/\/i.imgur.com\/fenrJmj.png[\/img]\" title=\"Copy.\"\">Copy<\/div> <script type=\"text\/javascript\" src=\"ZeroClipboard.js\"><\/script><script type=\"text\/javascript\"> var client = new ZeroClipboard(document.getElementById('d_clip_button1'));<\/script><\/body><\/html>","tabs_item_title":"-default-","tables_item_title":"-default-","lists_item_title":"-default-","mosaic_item_title":"-default-","grids_item_title":"-default-","quotes_item_description":"-default-","grids_item_description":"-default-","tables_item_description":"-default-","tabs_item_icon":"-default-","mosaic_item_description":"-default-","tabs_item_link":"-default-","lists_item_image":"-default-","quotes_item_image":"-default-","tables_item_image":"-default-","grids_item_image":"-default-","mosaic_item_image":"-default-","mosaic_item_link":"-default-","tabs_item_description":"-default-","grids_item_link":"-default-","tables_item_price":"-none-","tables_item_feature_1":"-none-","quotes_item_author":"-none-","lists_item_link":"-default-","mosaic_item_tags":"-article-","sliders_item_title":"-default-","features_item_title":"-default-","quotes_item_subtext":"-none-","tables_item_feature_2":"-none-","sliders_item_description":"-default-","headlines_item_image":"-default-","tables_item_feature_3":"-none-","lists_item_description":"-default-","quotes_item_link":"-default-","features_item_description":"-default-","quotes_item_direction":"-bottomleft-","features_item_image":"-default-","sliders_item_image":"-default-","headlines_item_link":"-default-","tables_item_feature_4":"-none-","tables_item_link":"-default-","features_item_link":"-default-","headlines_item_description":"-default-","sliders_item_link":"-default-","tables_item_link_text":"Buy Now"}'; 

INSERT INTO yi5vu_roksprocket_items (module_id, provider, params) 
VALUES ('122', 'simple', @var) 

是什么导致了这个问题?我认为这是单引号或后引号,但我尝试了所有可能的组合。得到1064查询错误。

我只是想采取@var里面的内容并将它注入params。

+1

请提供完整的错误描述 – 2015-02-10 20:20:50

+3

可能是由于单引号转义问题。您的字符串在“strips_item_image”之后结束:“{由于单引号'type' – 2015-02-10 20:21:34

+0

可能是因为单引号内有单引号,需要转义它们 – 2015-02-10 20:21:52

回答

3

由于您的字符串以单引号开头,因此您不能在字符串本身内使用任何其他单引号,除非它们前面有反斜杠。

所以'不要这样做'是一个坏的字符串,'不要这样做'是好的。

+0

谢谢你的例子,我明白为什么现在它没有工作:) – user3591436 2015-02-10 20:52:28

相关问题