SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 19.10.2011 19:36:46

Petr
Завсегдатай
Откуда: Москва
Зарегистрирован: 19.10.2011
Сообщений: 51

You have an error in your SQL syntax

INSERT INTO `product_description` (`product_id`,`language_id`, `name`,`meta_keyword`,`meta_description`,`description`) VALUES (3122, '2', 'K& K Софтлайн-Нова', 'Тип,:,литыеМатериал,:,алюминиевый,сплавЦвет,:,серебристыйШирина,обода,:,6,/,5.5,/,6.5 \', 'Тип : литыеМатериал : алюминиевый сплавЦвет : серебристыйШирина обода : 6 / 5.5 / 6.5 \', '
Тип : литые
Материал : алюминиевый сплав
Цвет : серебристый
Ширина обода : 6 / 5.5 / 6.5 \"
Диаметр обода : 14 / 15 \"
Количество крепежных отверстий : 4 / 5
Диаметр расположения отверстий : 114.3 / 98 / 100 / 112 мм
Диаметр центрального отверстия : 58.6...67.1 мм
');


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 'Тип : литыеМатериал : алюминиевый сплавЦвет ' at line 1


Работаю над Сайтом http://tuningdom.ru/, Ищу гуру которого можно спросить обо Всем!

Неактивен

 

#2 19.10.2011 23:23:17

deadka
Администратор
Зарегистрирован: 14.11.2007
Сообщений: 2422

Re: You have an error in your SQL syntax

Перечитайте первый пункт правил форума пожалуйста.

Ошибка в запросе как минимум в том, что после значения на поле `meta_keyword` не идёт запятой, по-крайней мере так считает sql-парсер smile.

'Тип,:,литыеМатериал,:,алюминиевый,сплавЦвет,:,серебристыйШирина,обода,:,6,/,5.5,/,6.5 \', 'Тип

Перед словом Тип в конце приведенной мной строки указана одиночная кавычка, по синтаксису после нее должна идти запятая. Есть сильное подозрение, что у Вас неправильно экранированы одинарные кавычки - они должны быть экранированы внутри вставляемой строки, но строка должна быть ими обрамлена без экранирований.

Отредактированно deadka (19.10.2011 23:23:44)


Зеленый свет для слабаков, долги отдают только трусы, тру гики работают только в консоли...

Неактивен

 

#3 20.10.2011 01:00:12

Petr
Завсегдатай
Откуда: Москва
Зарегистрирован: 19.10.2011
Сообщений: 51

Re: You have an error in your SQL syntax

deadka написал:

Перечитайте первый пункт правил форума пожалуйста.

Ошибка в запросе как минимум в том, что после значения на поле `meta_keyword` не идёт запятой, по-крайней мере так считает sql-парсер smile.

'Тип,:,литыеМатериал,:,алюминиевый,сплавЦвет,:,серебристыйШирина,обода,:,6,/,5.5,/,6.5 \', 'Тип

Перед словом Тип в конце приведенной мной строки указана одиночная кавычка, по синтаксису после нее должна идти запятая. Есть сильное подозрение, что у Вас неправильно экранированы одинарные кавычки - они должны быть экранированы внутри вставляемой строки, но строка должна быть ими обрамлена без экранирований.

Эмм.. Вроде по русски написал не матерился)) Как то странно парсер то выдает это ошибку при импорте то нет, Я так понимаю править нужно php скрипт?Спасибо за ответ.


Работаю над Сайтом http://tuningdom.ru/, Ищу гуру которого можно спросить обо Всем!

Неактивен

 

#4 20.10.2011 01:02:41

deadka
Администратор
Зарегистрирован: 14.11.2007
Сообщений: 2422

Re: You have an error in your SQL syntax

Думаю да, нужно, чтобы php-скрипт генерировал корректный sql-запрос.


Зеленый свет для слабаков, долги отдают только трусы, тру гики работают только в консоли...

Неактивен

 

#5 21.10.2011 01:49:19

Petr
Завсегдатай
Откуда: Москва
Зарегистрирован: 19.10.2011
Сообщений: 51

Re: You have an error in your SQL syntax

Что то не помогает, импортирую из .csv файла, все записи однотипные, вот такого формата

116|Replica W532||data/Diski_Replica/131913383850891.jpg|<ul><li><b>Тип</b> :   литые</li><li><b>Материал</b> : алюминиевый сплав</li><li><b>Цвет</b> : серебристый</li><li><b>Ширина обода</b> : 6.5 "</li><li><b>Диаметр обода</b> : 15 "</li><li><b>Количество крепежных отверстий</b> : 5</li><li><b>Диаметр расположения отверстий</b> : 100 мм</li><li><b>Диаметр центрального отверстия</b> : 57.1 мм</li></ul>|5868
116|Replica 029 Hyundai||data/Diski_Replica/131912225649670.jpg|<ul><li><b>Тип</b> :   литые</li><li><b>Материал</b> : алюминиевый сплав</li><li><b>Цвет</b> : серебристый</li><li><b>Ширина обода</b> : 7 "</li><li><b>Диаметр обода</b> : 17 "</li><li><b>Количество крепежных отверстий</b> : 5</li><li><b>Диаметр расположения отверстий</b> : 114.3 мм</li><li><b>Диаметр центрального отверстия</b> : 67.1 мм</li></ul>|3800
116|Replica LR16||data/Diski_Replica/131912008364212.jpg|<ul><li><b>Тип</b> :   литые</li><li><b>Материал</b> : алюминиевый сплав</li><li><b>Цвет</b> : серебристый</li><li><b>Ширина обода</b> : 7.5 / 9.5 "</li><li><b>Диаметр обода</b> : 20 / 17 "</li><li><b>Количество крепежных отверстий</b> : 5</li><li><b>Диаметр расположения отверстий</b> : 108 / 120 мм</li><li><b>Диаметр центрального отверстия</b> : 63.3...72.6 мм</li></ul>|5415
 


Выполнение прерывается на определенной записи, которая ни чем не выделяется, после это я удаляю все записи, которые идут до нее, ставлю там любой символ,  сохраняю и процесс идет до следующей записи. Какой то закономерности в этом не вижу.


Работаю над Сайтом http://tuningdom.ru/, Ищу гуру которого можно спросить обо Всем!

Неактивен

 

#6 21.10.2011 02:36:33

evgeny
Гуру
Зарегистрирован: 04.05.2009
Сообщений: 335

Re: You have an error in your SQL syntax

Petr написал:

Я так понимаю править нужно php скрипт?

Да, используйте mysql_escape_string

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson