MS Access创建带有自动增量和默认日期的表 [英] MS Access Create Table with Autoincrement and default date
问题描述
我尝试创建具有自动递增ID和默认日期"字段的MS Access表,但下一个查询始终显示"CREATE TABLE语句中的语法错误.":
I try to create MS Access Table with autoincrement ID and Default Date field, but next query always says "Syntax error in CREATE TABLE statement.":
CREATE TABLE Table1
(
[ID] AUTOINCREMENT,
[Email] TEXT(255),
[ProductID] NUMBER,
[DateCreate] DATETIME,
[DateSend] DATETIME
);
ALTER TABLE Table1
ALTER [DateSend] DATETIME DEFAULT NOW() NOT NULL;
谁可以帮助我解决该查询.谢谢!
Who can help me to fix that query. Thanks!
推荐答案
Ms-Access中有许多NUMBER
类型,因此您必须具体.我想你要Integer
.
There are many NUMBER
types in Ms-Access, so you have to be specific. I guess you want Integer
.
CREATE TABLE Table1
(
[ID] AUTOINCREMENT,
[Email] TEXT(255),
[ProductID] INTEGER,
[DateCreate] DATETIME,
[DateSend] DATETIME
);
ALTER TABLE
语法需要ALTER COLUMN
:
ALTER TABLE Table1
ALTER COLUMN
[DateSend] DATETIME DEFAULT NOW() NOT NULL;
您也可以在一个语句中包含这两个:
You could also have those two in one statement:
CREATE TABLE Table1
(
[ID] AUTOINCREMENT,
[Email] TEXT(255),
[ProductID] INTEGER,
[DateCreate] DATETIME,
[DateSend] DATETIME DEFAULT NOW() NOT NULL
);
最佳做法是在每个表上都有一个PRIMARY KEY
,而您可能打算将其用于ID
:
It's best practise to have a PRIMARY KEY
on every table, and you probably intended that for the ID
:
[ID] AUTOINCREMENT PRIMARY KEY,
包含许多有关如何使用SQL处理Access的有用信息的页面:
A page with a lot of useful information about how to handle Access with SQL:
用于Access 2000的中级Microsoft Jet SQL
Intermediate Microsoft Jet SQL for Access 2000
这篇关于MS Access创建带有自动增量和默认日期的表的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!