2012-05-14 4 views
0
CREATE TABLE conversationlog(
    bot TINYINT(3) UNSIGNED NOT NULL DEFAULT '0', 
    id INT(11) NOT NULL AUTO_INCREMENT , 
    input TEXT, 
    response TEXT, 
    uid VARCHAR(255) DEFAULT NULL , 
    enteredtime TIMESTAMP(14) NOT NULL , 
    PRIMARY KEY (id) , 
    KEY botid(bot) 
) ENGINE = MYISAM ; 

MySQL сказал:Ошибка в SQL запросе ошибка # 1064 в первичном ключе декларации

# 1064 - У Вас есть ошибка в вашем SQL синтаксиса; проверьте руководство, которое соответствует версии сервера MySQL для правильного синтаксиса, чтобы использовать вблизи '(14) NOT NULL, PRIMARY KEY (ID), KEY botid (бот)) ENGINE = MyISAM' в л НСИ 7

написал этот SQL-запрос для создания журнала сеансов, я не знаю, почему возникает ошибка. Пожалуйста, исправьте.

ответ

1

Не передать параметр значение в TIMESTAMP. Вместо того, чтобы:

enteredtime TIMESTAMP(14) NOT NULL , 

используют это:

enteredtime TIMESTAMP NOT NULL , 
3

Вы пропустили пробел между enteredtime и TIMESTAMP:

enteredtime TIMESTAMP(14) NOT NULL , 
+0

, который был при вставке здесь, между введенным временем и временной отметкой нет пробела по той же ошибке. – Shiven

+0

Как указано ниже, попробуйте удалить (14) из метки времени. Получите это 'TIMESTAMP' – Tikkes

1

Существует пространство не хватает ... это должно быть как

enteredtime TIMESTAMP(14) NOT NULL 
1

Если изменить это:

enteredtime TIMESTAMP(14) NOT NULL , 

к этому:

enteredtime TIMESTAMP NOT NULL , 

Он будет работать

Пример here

+1

Если вы в порядке с представленными ответами. Тогда не забудьте принять его – Arion

Смежные вопросы