Что не так с оператором sql ниже? База данных — MySQL. Оператор генерируется моей функцией.
Парсер утверждает, что что-то не так с «ЕСЛИ», но я, должно быть, слеп...
CREATE TABLE IF NOT EXISTS statements (
'symbol' VARCHAR(10),
'statement' VARCHAR(20),
'frq' VARCHAR(2),
'date' DATETIME,
'account' VARCHAR(200),
'value' BIGINT,
PRIMARY KEY('symbol', 'statement', 'date')
);
Этот URL-адрес может оказаться полезным при попытке создать таблицу. mysqltutorial.net/mysql-create-table кажется, вам не хватает идентификатора движка.
Ошибки MySQL всегда включают фразу «Проверьте руководство для вашей версии MySQL». Ты сделал это? Если вы используете документацию MySQL MySQL X.x, заменив X.x номером версии MySQL, вы сможете очень легко найти эту документацию, и вы получите ответ на этот вопрос за меньшее время, чем вам потребовалось, чтобы опубликовать вопрос здесь.


В операторе создания имена столбцов не могут быть заключены в одинарные кавычки. Вместо этого используйте -
CREATE TABLE IF NOT EXISTS statements
(
symbol VARCHAR(10)
, statement VARCHAR(20)
, frq VARCHAR(2)
, date DATETIME
, account VARCHAR(200)
, value BIGINT
, PRIMARY KEY (
symbol
, statement
, date
)
);
В частности, какую версию ядра базы данных вы запрашиваете?