首页主机资讯sql怎么创建外键约束

sql怎么创建外键约束

时间2023-11-20 22:30:04发布访客分类主机资讯浏览648
导读:在SQL中,可以使用以下语法来创建外键约束:1. 在创建表时添加外键约束:```CREATE TABLE 表名 ( 列1 数据类型, 列2 数据类型, ... FOREIGN KEY (外键列 REFERENCES 参考表名 (参...

在SQL中,可以使用以下语法来创建外键约束:

1. 在创建表时添加外键约束:
```
CREATE TABLE 表名 (

列1 数据类型,

列2 数据类型,

...

FOREIGN KEY (外键列) REFERENCES 参考表名 (参考表的列)
);
```
例如,创建一个名为"Orders"的表,包含一个外键列"CustomerID",参考"Customers"表的"CustomerID"列:
```
CREATE TABLE Orders (

OrderID int,

ProductName varchar(255),

CustomerID int,

FOREIGN KEY (CustomerID) REFERENCES Customers(CustomerID)
);
```

2. 在已经存在的表中添加外键约束:
```
ALTER TABLE 表名
ADD FOREIGN KEY (外键列) REFERENCES 参考表名 (参考表的列);
```
例如,向已经存在的"Orders"表中添加外键约束:
```
ALTER TABLE Orders
ADD FOREIGN KEY (CustomerID) REFERENCES Customers(CustomerID);
```

3. 可以使用ON DELETE和ON UPDATE子句指定在主表中的行被删除或更新时的动作:
```
FOREIGN KEY (外键列) REFERENCES 参考表名 (参考表的列) ON DELETE 动作 ON UPDATE 动作
```
其中,动作可以是以下值之一:
- CASCADE:级联操作,即删除或更新主表中的行时,同时删除或更新外键表中的相关行。
- SET NULL:设置外键表中的外键列为NULL。
- SET DEFAULT:设置外键表中的外键列为默认值。
- NO ACTION:不执行任何操作,当删除或更新主表中的行时,如果外键表中存在与之关联的行,则会产生错误。

例如,创建一个名为"Orders"的表,包含一个外键列"CustomerID",参考"Customers"表的"CustomerID"列,级联删除和级联更新:
```
CREATE TABLE Orders (

OrderID int,

ProductName varchar(255),

CustomerID int,

FOREIGN KEY (CustomerID) REFERENCES Customers(CustomerID) ON DELETE CASCADE ON UPDATE CASCADE
);
```

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: sql怎么创建外键约束
本文地址: https://pptw.com/jishu/548075.html
linux系统chmod 755权限 python小波变换 wavedec2函数 各个返回值详解

游客 回复需填写必要信息