ALTER TABLE 语句 (Microsoft Jet SQL)

ALTER TABLE 语句

修改已用 CREATE TABLE 语句创建好的表设计。


注意 对于非微软数据库, Microsoft Jet 数据库引擎 不支持ALTER TABLE, 或 数据定义语言 (DDL) 语句的使用。而使用 DAO创建方法。


语法

ALTER TABLE 表 {ADD ADD{COLUMN 字段类型 [ (字长)] [NOT NULL]    [CONSTRAINT 索引 ] |

   ALTER COLUMN 字段类型 [(字长)] |

   CONSTRAINT 多重字段索引 } |

   DROP DROP{COLUMN 字段 I CONSTRAINT 索引名 } }

ALTER TABLE 语句分为以下几个部分:

部分

说明

table

欲修改的表之名称。

field

欲在内增加或删除的字段的名称。或表内欲被替换的字段名称。

type

字段的数据类型。

size

字段的字符长度 (文本及二进制字段)。

index

字段索引。欲了解更多有关如何构造本索引的信息,请看 CONSTRAINT子句

multifieldindex

欲增加至 中的多重字段索引的定义。欲了解更多有关如何构造本索引的信息,请看 CONSTRAINT子句

indexname

欲删除的多重字段索引的名称。

 

说明

使用 ALTER TABLE 语句,可用多种不同方法更改当前已存在的表:你可以:

?使用 ADD COLUMN 在表中添加新的字段。需要指定字段名、数据类型、还可以 (对文本和二进制字段)指定长度。例如,下列语句在员工表中增加一 25 个字符的、名为 Notes 的文本字段:

ALTER TABLE Employees ADD COLUMN Notes TEXT(25)

也可以定义此字段的索引。关于单一字段索引的详细信息,请参阅CONSTRAINT 子句主题。

如果对一字段指定 NOT NULL,则在这字段中添加的新记录必须有有效的数据。

?使用ALTER COLUMN改变一个当前字段的数据类型,需要指定字段名、新数据类型、还可以 (对文本和二进制字段)指定长度。例如,下列语句把雇员表中一个字段的数据类型, 被称为ZipCode(最初被定义为整数),改变成一个10字符文本字段:

ALTER TABLE Employees ALTER COLUMN ZipCode TEXT(10)

?使用 ADD CONSTRAINT 添加多重字段索引。关于多重字段索引的详细信息,请参阅 CONSTRAINT 子句主题。
?使用 DROP COLUMN 删除字段。只要指定欲删除的字段名即可。
?使用 DROP CONSTRAINT 删除多重字段索引。只要在 CONSTRAINT 保留字后面指定索引名即可。

注意

?不能同时添加或删除一个以上的字段或索引。
?你可以使用 CREATE INDEX 语句在一个表中增加一个单字段或多重字段,你还可以使用 ALTER TABLE 或 DROP 语句删除一个由ALTER TABLE或CREATE INDEX建立的索引。
?可以在单一字段上使用 NOT NULL,或在用于单一字段或多重字段(名为 CONSTRAINT) 的 CONSTRAINT 子句中使用 NOT NULL。但是,一个字段只能使用一次 NOT NULL 限制。尝试多次应用此限制将导致运行错误。

请参阅

ADD USER 语句

CREATE USER 或 GROUP 语句

ALTER USER 或 DATABASE 语句

CREATE VIEW 语句

CONSTRAINT 子句

DROP 语句

CREATE INDEX 语句

DROP USER 或 GROUP 语句

CREATE PROCEDURE 语句

GRANT 语句

CREATE TABLE 语句

REVOKE 语句

 

示例

ALTER TABLE 语句示例