Как исправить синтаксическую ошибку в команде SQL?
Есть вот такая команда:
CREATE DATABASE IF NOT EXISTS "7281_pav" DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci; |
CREATE DATABASE IF NOT EXISTS "7281_pav" DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
И вот такая ошибка:
Parse error: syntax error, unexpected 'DATABASE' (T_STRING) |
Parse error: syntax error, unexpected 'DATABASE' (T_STRING)
Как я понял, там синтаксическая ошибка со словом DATABASE, но я ее не вижу.
Дополнительно:
Дело точно не в кавычках?
`
Или совсем без них.
CREATE DATABASE "7281_pav" DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci; |
CREATE DATABASE "7281_pav" DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
Такие они злые. Идентификаторы. Поэтому пробуй сразу без цифр.
Ну у меня сработала команда, я прописал вот так:
'CREATE DATABASE "pav_7281" DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci'; |
'CREATE DATABASE "pav_7281" DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci';
Не надо искать источник проблемы и способ исправления на стороне MySQL.
Можно поподробнее узнать?
Вы получаете сообщение об ошибке Parse error: syntax error, unexpected 'DATABASE' (T_STRING).
Это сообщение об ошибке - производства PHP. Он обнаружил что-то неправильное в Вашем коде. Ещё до того, как что-то было отправлено на MySQL-сервер. То есть MySQL даже не в курсе, что его хотели попросить создать базу данных.
Так что не надо делать глупых предположений о проблемах со словом DATABASE. Выложите PHP-код, который намерен выполнить запрос - сто пудов там обнаружится какая-нибудь синтаксическая ошибка...
Как исправить синтаксическую ошибку в команде SQL?
Ошибка не в команде SQL, а в том, как Вы пытаетесь её выполнить средствами PHP.
Ответы:
Надо сделать так.
CREATE DATABASE pav_7281 DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci |
CREATE DATABASE pav_7281 DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci
UPD:
- нееее. надо просто убрать кавычки
- Дмитрий, fixed
Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.
Пока нет других ответов. Будьте первым, кто поможет автору.
Ответить на вопрос
Для исправления синтаксической ошибки в команде SQL вам нужно приступить к анализу ошибки и понять, в чем именно заключается проблема. Вот несколько шагов, которые могут помочь вам исправить такие ошибки:
1. Проверьте правильность написания команды SQL. Убедитесь, что все ключевые слова, таблицы и поля указаны правильно и не содержат опечаток.
2. Проверьте правильность использования кавычек. Если вы используете строки в SQL запросе, убедитесь, что они заключены в одинарные или двойные кавычки в зависимости от используемой базы данных.
3. Проверьте правильность использования операторов. Убедитесь, что операторы условий, сортировки и группировки данных используются правильно и не содержат ошибок.
4. Проверьте правильность использования функций и агрегатных функций. Убедитесь, что они используются правильно и в нужном контексте.
5. Используйте инструменты для анализа SQL запросов, такие как SQL Fiddle или SQL Formatter, чтобы проверить правильность запроса и обнаружить возможные ошибки.
Приведу пример кода на языке PHP с использованием тега
для демонстрации исправления синтаксической ошибки в команде SQL: <pre lang="php"> $query = "SELECT * FROM users WHERE name = 'John';";
Если вы продолжаете сталкиваться с проблемой, не стесняйтесь обратиться за помощью к сообществу разработчиков или специалистам по базам данных. Предоставьте им информацию о вашем запросе и возможные ошибки, чтобы они могли вам помочь найти решение.