MS Access创建带有自动增量和默认日期的表 [英] MS Access Create Table with Autoincrement and default date

查看:112
本文介绍了MS Access创建带有自动增量和默认日期的表的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我尝试创建具有自动递增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屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆