您的位置首页百科问答

什么是 DDL 和 DML

什么是 DDL 和 DML

的有关信息介绍如下:

什么是 DDL 和 DML

什么是 DDL 和 DML

到目前为止, 所讨论的例子只与数据操作有关。SQL 还用于创建、删除和更改表。

数据操纵语言 (DML) 使用 "选择"、"插入"、"更新" 和 "删除" 关键字来操作数据。数据定义语言 (DDL) 用于创建和操作表结构。

表是使用 "create table" 语句创建的。该语句包含列的列表和每个列的数据类型:

CREATE TABLE meeting_rooms(

meeting_room_id INT,

office_location_id INT,

meeting_room_name VARCHAR(100));

这将创建一个包含三列的表, 其中两列是 INT 类型的, 另一列是 VARCHAR(100), 一个字符串最多包含100个字符。请注意, 不同数据库之间的有效数据类型可能会有所不同。您需要检查数据库供应商提供的最新文档, 以了解允许的类型。

虽然有一个名为 office _location _ id 的列, 但没有引用 office _ locations表;此列中允许的数据没有参照完整性。

正如您所期望的那样, DDL 能够完成的不仅仅是创建表。它也可以更改表定义, 例如添加列:

ALTER TABLE meeting_rooms ADD COLUMN telephone_extension VARCHAR(100);

在meeting_rooms表上执行 SELECT 显示该列, 就像它一直在那里一样。如果表已经有数据, 则该列将为空, 并带有 NULL 值。您可以在 ALTER TABLE 语句上指定默认值。

若要删除或删除列, 请按以下步骤运行该语句:

ALTER TABLE meeting_rooms DROP COLUMN telephone_extension;

还可以就地修改列的定义。例如, 可以向表中添加外键约束:

ALTER TABLE meeting_rooms

ADD FOREIGN KEY (office_location_id)

REFERENCES office_locations (office_location_id);

添加此约束后, meeting_rooms表的列中只允许使用有效的 office _ location_ id。如果列中已有不满足约束的数据, 则该语句将被拒绝。

您也可以添加任意约束, 例如将列定义为不允许 NULL 值, 或者只允许特定范围的整数值。