2014-11-07 9 views
0

Я пытаюсь создать таблицы, используя MySQL скрипты, но я получаю сообщение об ошибке, как это:SqlLite3 Ошибка при создании таблицы

Exception ESQLiteNativeException in module ActivityPlan.exe at 0051A80E.

[FireDAC][Phys][SQLite] ERROR: near "CODICE": syntax error.

CREATE TABLE anag_giac (CODICE char(30) DEFAULT NULL, 
         COD_TECNICO char(10) DEFAULT NULL, 
         DESCRIZION char(100) DEFAULT NULL, 
         PREZZO double DEFAULT NULL, 
         UM char(20) DEFAULT NULL, 
         STATO char(1) DEFAULT NULL, 
         KEY IANAG_GIAC (CODICE,COD_TECNICO)) 

Есть идеи?

+0

Удалить все 'DEFAULT NULL', чтобы начать. По умолчанию ** всегда ** NULL, если вы не указали иначе. После этого [ознакомьтесь с документацией] (https://www.sqlite.org/lang_createtable.html), чтобы объяснить проблему, особенно [foreign_key_clause] (https://www.sqlite.org/syntax/foreign-key -clause.html). –

+0

Только что сделано, но ничего не изменилось !! У меня такая же ошибка –

+0

Кажется, проблема вокруг создания ключа. Удаление строки «KEY IANAG_GIAC (CODICE, COD_TECNICO)» это работает ... –

ответ

1

Попробуйте это:

CREATE TABLE anag_giac (
    CODICE CHAR(30) NOT NULL, 
    COD_TECNICO CHAR(10) NOT NULL, 
    DESCRIZION CHAR(100) NULL, 
    PREZZO DOUBLE PRECISION NULL, 
    UM CHAR(20) NULL, 
    STATO CHAR(1) NULL, 
    CONSTRAINT PrimaryKey1 PRIMARY KEY (CODICE,COD_TECNICO) 
); 
+0

Спасибо .. это работает! –

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