创建表 - 时间表

时间:2015-06-17 17:35:45

标签: sql datetime ms-access ddl create-table

我在尝试使用MS Access创建表时遇到问题。

我确信我的问题在于“日期时间”字段,但我无法弄清楚我错过了什么或做错了什么。

当我点击“运行”时,我得到了

  

“字段定义中的语法错误”

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);

3 个答案:

答案 0 :(得分:4)

时间和程序是保留字,因此应该转义:

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);

答案 1 :(得分:2)

此处ProcedureTime是保留字,因此需要使用[]进行转义,如下所示。有关详细信息,请参阅Documentation

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);

答案 2 :(得分:1)

作为Time& Procedure是保留关键字,因此请将时间和周期设为括号[]中的过程列或者如果可能,请选择备用名称。见List of Keyword

[Time] and [Procedure]