Sql 创建表时间语句

Sql 创建表时间语句,sql,datetime,ms-access,ddl,create-table,Sql,Datetime,Ms Access,Ddl,Create Table,尝试使用MS Access创建表时遇到问题 我确信我的问题在于“日期时间”字段,但我不知道我遗漏了什么或做错了什么 当我点击“运行”时,我得到 “字段定义中的语法错误” 由于Time和Procedure是保留关键字,因此请将Time和Procedure列括在括号[]中,或选择其他名称(如果可能)。看 时间和过程是保留字,因此应转义: Create Table Appointments (DocID char(4) not null pr

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

我确信我的问题在于“日期时间”字段,但我不知道我遗漏了什么或做错了什么

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

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


由于
Time
Procedure
是保留关键字,因此请将Time和Procedure列括在括号[]中,或选择其他名称(如果可能)。看


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

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

这里的
过程
时间
是保留字,因此需要使用
[]
进行转义,如下所示。有关更多信息,请参阅

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

避免使用保留字作为字段名。日子、时间和程序看起来都很可疑。太棒了!它很管用谢谢@HansUp感谢您的更正-也为该字段添加了转义/重命名。太棒了!非常感谢。
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);
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);