Можете ли вы определить NULL для определения столбца в операторе Create Table в базе данных Firebird?

Я использую SQL Manager Lite, чтобы попытаться запустить таблицу создания DDL. сценарий. Я новичок в Firebird и не знаю, почему он не работает. Следующий скрипт...

create table Contacts (
    ID                      integer            not null,
    FirstName               varchar(64)        not null,
    LastName                varchar(64)        not null,
    MiddleInitial           varchar(1)             null
);

Вызывает ошибку синтаксического анализа (НЕИДЕНТИФИКАЦИОННЫЙ ТОКЕН) ограничения null для столбца MiddleInitial.

Вот точная ошибка, возвращаемая Sql Lite...

Invalid token.
Dynamic SQL Error.
SQL error code = -104.
Token unknown - line 5, column 52.
Null.

Не разрешено ли ограничение NULL в Create Table DDL для firebird?


person Seth Spearman    schedule 29.07.2010    source источник


Ответы (2)


не уверен, что это работает, так как я не могу проверить это прямо сейчас, но попробуйте удалить null из предложения:

CREATE TABLE Contacts(
    Id integer not null,
    First_Name varchar(64) not null,
    Last_Name varchar(64) not null,
    Middle_Initial varchar(1)
);

См. эту ссылку: Firebird Wiki

person Eduardo Rascon    schedule 29.07.2010
comment
Вот оно. Нуль не допускается. Кстати... Я также узнал, что вы не можете назвать поле Активным, не разделяя его кавычками. Сет - person Seth Spearman; 31.07.2010

Null не допускается, но по умолчанию это null

Вы можете ознакомиться с этой грамматикой.

person Hugues Van Landeghem    schedule 29.07.2010