Создать таблицу - Отчет о времени

У меня возникли проблемы при попытке создать таблицу с помощью MS Access.

Я точно знаю, что моя проблема заключается в поле «datetime», но я не могу понять, что мне не хватает или что я делаю неправильно.

Когда я нажимаю "запустить", я получаю

«Синтаксическая ошибка в определении поля»

Create Table Appointments
(DocID             char(4)             not null       primary key,
 PatID             char(8)             not null,      
 Day               varchar(8)          not null,      
 Time              datetime            not null,
 Procedure         varchar(50)         null);

person BaBar Miamor    schedule 17.06.2015    source источник
comment
Избегайте использования зарезервированных слов в качестве имен полей. День, время и процедура выглядят подозрительно.   -  person Dan Bracuk    schedule 17.06.2015


Ответы (3)


Время и процедура - это зарезервированные слова, поэтому их следует избегать:

Create Table Appointments
(DocID             char(4)             not null       primary key,
 PatID             char(8)             not null,      
 [Day]             varchar(8)          not null,      
 [Time]            datetime            not null,
 [Procedure]       varchar(50)         null); 

Или еще лучше найдите имена, которые не являются зарезервированными словами:

Create Table Appointments
(DocID             char(4)             not null       primary key,
 PatID             char(8)             not null,      
 AppointmentDay    varchar(8)          not null,      
 AppointmentTime   datetime            not null,
 MedicalProcedure  varchar(50)         null);
person Mureinik    schedule 17.06.2015
comment
Потрясающие ! Спасибо! - person BaBar Miamor; 17.06.2015
comment
@HansUp благодарит за исправление - добавлено экранирование / переименование и для этого поля. - person Mureinik; 17.06.2015

Здесь Procedure и Time - зарезервированные слова, поэтому их нужно экранировать с помощью [], как показано ниже. Дополнительную информацию см. В документации.

Create Table Appointments
(DocID             char(4)             not null       primary key,
 PatID             char(8)             not null,      
 [Day]               varchar(8)          not null,      
 [Time]              datetime            not null,
 [Procedure]         varchar(50)         null);
person Rahul    schedule 17.06.2015
comment
Потрясающие ! Спасибо !! - person BaBar Miamor; 17.06.2015

Поскольку Time и Procedure являются зарезервированными ключевыми словами, заключите столбец «Время и процедура» в квадратные скобки [] или выберите альтернативные имена, если это возможно. См. Список ключевых слов

[Time] and [Procedure]
person HaveNoDisplayName    schedule 17.06.2015