SQLinfo.ru - Все о MySQL

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

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

Вы не зашли.

#26 11.05.2013 18:27:38

Andrik18
Участник
Зарегистрирован: 11.05.2013
Сообщений: 2

Re: Ошибка You have an error in your SQL syntax; check the manual that corresponds to your MySQL

Здраствуйте я  новичёк MySQL,помагите решить проблемку с ошибкой

CREATE TABLE IF NOT EXISTS `player_ach` (
`id_pa` int( 11 ) NOT NULL AUTO_INCREMENT ,
`idp` int( 11 ) NOT NULL ,
`ida` int( 11 ) NOT NULL ,
`amount` int( 11 ) NOT NULL ,
PRIMARY KEY ( `id_pa` ) ,
) ENGINE = MYISAM DEFAULT CHARSET = utf8 COLLATE = utf8_unicode_ci AUTO_INCREMENT =1;



Ответ MySQL: 
#1064 - 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 ') ENGINE=MyISAM  DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=1' at line 13

Неактивен

 

#27 11.05.2013 19:17:09

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5827

Re: Ошибка You have an error in your SQL syntax; check the manual that corresponds to your MySQL

PRIMARY KEY ( `id_pa` ) ,

Запятая не нужна.

Неактивен

 

#28 11.05.2013 20:15:35

Andrik18
Участник
Зарегистрирован: 11.05.2013
Сообщений: 2

Re: Ошибка You have an error in your SQL syntax; check the manual that corresponds to your MySQL

vasya написал:

PRIMARY KEY ( `id_pa` ) ,

Запятая не нужна.

Спасибо, я и незаметил её

Неактивен

 

#29 02.08.2013 18:00:23

АндрейМ
Участник
Зарегистрирован: 02.08.2013
Сообщений: 1

Re: Ошибка You have an error in your SQL syntax; check the manual that corresponds to your MySQL

Добрый день!
Пытался написать SQL-команды для корректного удаления FK (с проверкой на существование). Ранее писал на MSSQL, поэтому делал по аналогии:
USE MyDB;
IF EXISTS (SELECT * FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS WHERE CONSTRAINT_SCHEMA = DATABASE() AND CONSTRAINT_TYPE=`Foreign Key` And CONSTRAINT_NAME=`FK_MyKey`) THEN
  alter table MyTable drop FOREIGN KEY FK_MyKey;
End IF;

Но получаю ошибку "You have an error in your SQL syntax; check the manual that corresponds to your MySQL version for right syntax to use near 'If EXIST..."
Поскажите пожалуйста, в чём ошибка?
Пробовал перед этой строкой объявлять переменную:
Declare iCount DEFAULT 0;
тогда ругается на это объявление. Что не так?
Спасибо.

Неактивен

 

#30 25.08.2014 09:39:38

priymakiwan
Участник
Зарегистрирован: 25.08.2014
Сообщений: 3

Re: Ошибка You have an error in your SQL syntax; check the manual that corresponds to your MySQL

Добрый день!
Подскажите пожалуйста, при импорте бэкапа, выходит следующая ошибка:
ERROR 1064 (42000) at line 42514: 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 'maxvalue > value+count;
        if (ROW_COUNT() != 0) then
            select max(value) into v' at line 5

Operation failed with exitcode 1

Неактивен

 

#31 25.08.2014 10:43:13

rgbeast
Администратор
MySQL Authorized Developer and DBA
Откуда: Москва
Зарегистрирован: 21.01.2007
Сообщений: 3878

Re: Ошибка You have an error in your SQL syntax; check the manual that corresponds to your MySQL

Приведите запрос полностью

Неактивен

 

#32 25.08.2014 12:43:35

priymakiwan
Участник
Зарегистрирован: 25.08.2014
Сообщений: 3

Re: Ошибка You have an error in your SQL syntax; check the manual that corresponds to your MySQL

/*!50003 SET SESSION SQL_MODE=@OLD_SQL_MODE*/;;
/*!50003 DROP PROCEDURE IF EXISTS `GenIDInternal` */;;
/*!50003 SET SESSION SQL_MODE="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER"*/;;
/*!50003 CREATE*/ /*!50020 DEFINER=`root`@`localhost`*/ /*!50003 PROCEDURE `GenIDInternal`(IN gname varchar(250),IN count int,OUT val bigint)
begin
    if (GET_LOCK(gname,10000) = 1) then
        update so_gen_tab set value = value + count
        where name = gname and maxvalue > value+count;
        if (ROW_COUNT() != 0) then
            select max(value) into val from so_gen_tab where name = gname;
        end if;
        select RELEASE_LOCK(gname) into @rel;
    end if;
end */;;

Неактивен

 

#33 25.08.2014 12:56:10

rgbeast
Администратор
MySQL Authorized Developer and DBA
Откуда: Москва
Зарегистрирован: 21.01.2007
Сообщений: 3878

Re: Ошибка You have an error in your SQL syntax; check the manual that corresponds to your MySQL

maxvalue - ключевое слово MySQL. Если это имя колонки, его нужно заключать в обратные кавычки:

and `maxvalue` > value+count;

Неактивен

 

#34 31.08.2014 20:51:30

SoFuWa
Участник
Зарегистрирован: 31.08.2014
Сообщений: 6

Re: Ошибка You have an error in your SQL syntax; check the manual that corresponds to your MySQL

Добрый вечер, у меня такая же ошибка "status=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"

'Если у какого-то мужчины родится дочь, и он н' - часть текста из записи бд столбец question. Я всё прочитал на эту тему, не знаю почему.

mysql_query("INSERT INTO ixh95_smfaq (id, catid, question, answer, checked_out, checked_out_time, ordering, published, created, created_by, user_id, created_by_email, IP, answer_created_by_id, answer_created, answer_state, answer_email, access, metadesc, metakey) VALUES ('$id', '$catid', '$question', $answer', '$checked_out', '$checked_out_time', '$ordering', '$published', '$created', '$created_by', '$user_id', '$created_by_email', '$ip', '$answer_created_by_id', '$answer_created', '$answer_state', '$answer_email', '$access', '$metadesc', '$metakey')") or die("status=".mysql_error());

Отредактированно SoFuWa (31.08.2014 20:57:02)

Неактивен

 

#35 31.08.2014 21:07:15

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

Re: Ошибка You have an error in your SQL syntax; check the manual that corresponds to your MySQL

Сделайте вот так...

$sql = "INSERT INTO ixh95_smfaq (id, catid, question, answer, checked_out, checked_out_time, ordering, published, created, created_by, user_id, created_by_email, IP, answer_created_by_id, answer_created, answer_state, answer_email, access, metadesc, metakey) VALUES ('$id', '$catid', '$question', $answer', '$checked_out', '$checked_out_time', '$ordering', '$published', '$created', '$created_by', '$user_id', '$created_by_email', '$ip', '$answer_created_by_id', '$answer_created', '$answer_state', '$answer_email', '$access', '$metadesc', '$metakey')";

print $sql;

mysql_query($sql);
 

и пришлите вывод от print сюда.


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

Неактивен

 

#36 31.08.2014 21:14:50

SoFuWa
Участник
Зарегистрирован: 31.08.2014
Сообщений: 6

Re: Ошибка You have an error in your SQL syntax; check the manual that corresponds to your MySQL

там начинается так "INSERT INTO ixh95_smfaq (id, catid, question, answer, checked_out, checked_out_time, ordering, published, created, created_by, user_id, created_by_email, IP, answer_created_by_id, answer_created, answer_state, answer_email, access, metadesc, metakey) VALUES ('', '141', 'Можете выслать мне все что касается Никаха, брака,семьи! Очень прошу. ', ОТВЕТ :"

а дальше содержание всей таблицы jos_smfaq которая выбрана, до самого конца, 100500 страниц.

Неактивен

 

#37 31.08.2014 21:16:54

SoFuWa
Участник
Зарегистрирован: 31.08.2014
Сообщений: 6

Re: Ошибка You have an error in your SQL syntax; check the manual that corresponds to your MySQL

точнее там теги есть, но браузер их интерпритирует как html

INSERT INTO ixh95_smfaq (id, catid, question, answer, checked_out, checked_out_time, ordering, published, created, created_by, user_id, created_by_email, IP, answer_created_by_id, answer_created, answer_state, answer_email, access, metadesc, metakey) VALUES ('', '141', 'Можете выслать мне все что касается Никаха, брака,семьи! Очень прошу. ', <span style="font-size: 13pt;"><span style="color: red;"><b>ОТВЕТ :</b> </span></span>

и так дальше

Неактивен

 

#38 31.08.2014 21:17:55

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

Re: Ошибка You have an error in your SQL syntax; check the manual that corresponds to your MySQL

Добавьте ' перед $answer

Чтобы получилось не

'$question', $answer', '$checked_out'

а

'$question', '$answer', '$checked_out'


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

Неактивен

 

#39 31.08.2014 21:30:49

SoFuWa
Участник
Зарегистрирован: 31.08.2014
Сообщений: 6

Re: Ошибка You have an error in your SQL syntax; check the manual that corresponds to your MySQL

на самом деле эт токо что так стало, пока я ковырялся. я добавил. Так и было правильно изначально и дальше 1 строки не обрабатывалось и сейчас так же.

Но когда я записал так
$sql = "INSERT INTO ixh95_smfaq (id, catid, question, answer, checked_out, checked_out_time, ordering, published, created, created_by, user_id, created_by_email, IP, answer_created_by_id, answer_created, answer_state, answer_email, access, metadesc, metakey) VALUES ('$id', '$catid', '$question', '$answer', '$checked_out', '$checked_out_time', '$ordering', '$published', '$created', '$created_by', '$user_id', '$created_by_email', '$ip', '$answer_created_by_id', '$answer_created', '$answer_state', '$answer_email', '$access', '$metadesc', '$metakey')";

mysql_query($sql);

вместо

mysql_query("INSERT INTO ixh95_smfaq (id, catid, question, answer, checked_out, checked_out_time, ordering, published, created, created_by, user_id, created_by_email, IP, answer_created_by_id, answer_created, answer_state, answer_email, access, metadesc, metakey) VALUES ('$id', '$catid', '$question', '$answer', '$checked_out', '$checked_out_time', '$ordering', '$published', '$created', '$created_by', '$user_id', '$created_by_email', '$ip', '$answer_created_by_id', '$answer_created', '$answer_state', '$answer_email', '$access', '$metadesc', '$metakey')") or die("status=".mysql_error());


То стало доходить до половины таблицы, но потом опять ошибка такая же.

Неактивен

 

#40 31.08.2014 21:34:29

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

Re: Ошибка You have an error in your SQL syntax; check the manual that corresponds to your MySQL

Затруднительно найти в запросе ошибку, не видя сам запрос (с уже подставленными переменными php-шными).
В конце концов - запишите его в текстовый файл через тот же file_put_contents(ПУТЬ_К_ФАЙЛУ,$sql).

Ошибка может быть в том, что где-то в переменных ваших закрался символ '.


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

Неактивен

 

#41 31.08.2014 21:37:33

SoFuWa
Участник
Зарегистрирован: 31.08.2014
Сообщений: 6

Re: Ошибка You have an error in your SQL syntax; check the manual that corresponds to your MySQL

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

Вот кусок текста "сказал:'Если у какого-то мужчины родится дочь, и"

Подозрительно что тут в тексте одинарная ковычка, из за неё? Удалить их все или заменить на двойные кавычки?

Отредактированно SoFuWa (31.08.2014 21:39:27)

Неактивен

 

#42 31.08.2014 21:41:42

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

Re: Ошибка You have an error in your SQL syntax; check the manual that corresponds to your MySQL

Лучше при формировании запроса экранируйте все строчные переменные специальной функцией.
см http://php.net/manual/ru/function.mysql … string.php
К слову, переменные, содержащие целочисленные значение лучше пропускать через intval и нет нужды оборачивать их в кавычки, как у Вас в скрипте.


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

Неактивен

 

#43 31.08.2014 21:49:36

SoFuWa
Участник
Зарегистрирован: 31.08.2014
Сообщений: 6

Re: Ошибка You have an error in your SQL syntax; check the manual that corresponds to your MySQL

Благодарю, всё получилось smile

Неактивен

 

#44 03.08.2016 14:20:26

18055
Участник
Зарегистрирован: 03.08.2016
Сообщений: 1

Re: Ошибка You have an error in your SQL syntax; check the manual that corresponds to your MySQL

Добрый день!
После переноса сайта на новый хостинг в админке не отображаются заказы с сайта.
Вот такие ошибки БД выдает


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 ' parent.) as Price4User, IF(m. IS NULL, parent., m.) a' at line 3
Query:
SELECT m.*,

                          IFNULL(m., parent.) as Price4User,
                          IF(m. IS NULL, parent., m.) as Currency4User,

                          IFNULL(m.PriceMinimum, parent.PriceMinimum) as PriceMinimum,

                          IF(m.Keyword IS NULL OR m.Keyword = '', CONCAT(u.Hidden_URL, s.EnglishName, '_', m.Message_ID, '.html'),
                                                CONCAT(u.Hidden_URL, m.Keyword, '.html')) as URL

                   
                     
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 'AND c.Subdivision_ID = s.Subdivision_ID ORDER BY s.Priority ' at line 5
Query:
SELECT c.EnglishName, s.Hidden_URL, c.Sub_Class_Name
                  FROM Sub_Class as c, Subdivision as s
                  WHERE c.Class_ID = 115
                    AND c.Subdivision_ID =
                    AND c.Subdivision_ID = s.Subdivision_ID ORDER BY s.Priority
                  LIMIT 1

в базах данных мало что понимаю, подскажите плиз

Неактивен

 

#45 03.08.2016 14:33:02

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

Re: Ошибка You have an error in your SQL syntax; check the manual that corresponds to your MySQL

Вот эта конструкция некорректная точно
IFNULL(m., parent.) as Price4User,
после m. и parent. должны быть указаны поля.
Как в
IFNULL(m.PriceMinimum, parent.PriceMinimum)

Так что нужно разбираться с кодом, который формирует этот sql-запрос.


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

Неактивен

 

#46 24.06.2018 14:16:07

Biggie Smalls
Участник
Зарегистрирован: 02.06.2018
Сообщений: 12

Re: Ошибка You have an error in your SQL syntax; check the manual that corresponds to your MySQL

MySQL Error: 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
при импорте бд через сайпикс вот эта ошибка выскакивает, не подскажите, что делать?

Неактивен

 

#47 24.06.2018 21:47:05

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5827

Re: Ошибка You have an error in your SQL syntax; check the manual that corresponds to your MySQL

попробуйте сделать дамп/импорт родными средствами mysql

Неактивен

 

#48 24.06.2018 22:02:45

Biggie Smalls
Участник
Зарегистрирован: 02.06.2018
Сообщений: 12

Re: Ошибка You have an error in your SQL syntax; check the manual that corresponds to your MySQL

vasya написал:

попробуйте сделать дамп/импорт родными средствами mysql

не вышло.
а это вообще можно поправить как-то?

Неактивен

 

#49 24.06.2018 22:06:50

klow
Старожил
Зарегистрирован: 06.12.2014
Сообщений: 411

Re: Ошибка You have an error in your SQL syntax; check the manual that corresponds to your MySQL

Юморист. smile
Вы надеетесь, что тут собрались одни экстрасенсы?

не вышло.

Какая именно ошибка, на какой операции? приведите текст.

Неактивен

 

#50 24.06.2018 22:16:54

Biggie Smalls
Участник
Зарегистрирован: 02.06.2018
Сообщений: 12

Re: Ошибка You have an error in your SQL syntax; check the manual that corresponds to your MySQL

klow написал:

Юморист. smile
Вы надеетесь, что тут собрались одни экстрасенсы?

не вышло.

Какая именно ошибка, на какой операции? приведите текст.

да нет,я просто слабоват в этом)
    MySQL Error: 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 (/home/l/l43548b/сайт.ru/public_html/sxd/index.php:1594)
извиняюсь, если затупил.
при импорте через сайпикс дампер выскакивает прям сразу.

Отредактированно Biggie Smalls (24.06.2018 22:18:20)

Неактивен

 

Board footer

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