SQL FOREIGN KEY 约束的建立与删除(转)
来源:互联网 发布:java 循环替换字符串 编辑:程序博客网 时间:2024/05/21 06:37
SQL FOREIGN KEY 约束
一个表中的 FOREIGN KEY 指向另一个表中的 PRIMARY KEY。
让我们通过一个例子来解释外键。请看下面两个表:
"Persons" 表:
"Orders" 表:
请注意,"Orders" 中的 "Id_P" 列指向 "Persons" 表中的 "Id_P" 列。
"Persons" 表中的 "Id_P" 列是 "Persons" 表中的 PRIMARY KEY。
"Orders" 表中的 "Id_P" 列是 "Orders" 表中的 FOREIGN KEY。
FOREIGN KEY 约束用于预防破坏表之间连接的动作。
FOREIGN KEY 约束也能防止非法数据插入外键列,因为它必须是它指向的那个表中的值之一。
SQL FOREIGN KEY Constraint on CREATE TABLE
下面的 SQL 在 "Orders" 表创建时为 "Id_P" 列创建 FOREIGN KEY:
MySQL:
CREATE TABLE Orders(O_Id int NOT NULL,OrderNo int NOT NULL,Id_P int,PRIMARY KEY (O_Id),FOREIGN KEY (Id_P) REFERENCES Persons(Id_P)
)
SQL Server / Oracle / MS Access:
CREATE TABLE Orders(O_Id int NOT NULL PRIMARY KEY,OrderNo int NOT NULL,Id_P int FOREIGN KEY REFERENCES Persons(Id_P)
)
如果需要命名 FOREIGN KEY 约束,以及为多个列定义 FOREIGN KEY 约束,请使用下面的 SQL 语法:
MySQL / SQL Server / Oracle / MS Access:
CREATE TABLE Orders(O_Id int NOT NULL,OrderNo int NOT NULL,Id_P int,PRIMARY KEY (O_Id),CONSTRAINT fk_PerOrders FOREIGN KEY (Id_P)REFERENCES Persons(Id_P)
)
SQL FOREIGN KEY Constraint on ALTER TABLE
如果在 "Orders" 表已存在的情况下为 "Id_P" 列创建 FOREIGN KEY 约束,请使用下面的 SQL:
MySQL / SQL Server / Oracle / MS Access:
ALTER TABLE OrdersADD FOREIGN KEY (Id_P)REFERENCES Persons(Id_P)
如果需要命名 FOREIGN KEY 约束,以及为多个列定义 FOREIGN KEY 约束,请使用下面的 SQL 语法:
MySQL / SQL Server / Oracle / MS Access:
ALTER TABLE OrdersADD CONSTRAINT fk_PerOrdersFOREIGN KEY (Id_P)REFERENCES Persons(Id_P)
撤销 FOREIGN KEY 约束
如需撤销 FOREIGN KEY 约束,请使用下面的 SQL:
MySQL:
ALTER TABLE OrdersDROP FOREIGN KEY fk_PerOrders
SQL Server / Oracle / MS Access:
ALTER TABLE OrdersDROP CONSTRAINT fk_PerOrders
- SQL FOREIGN KEY 约束的建立与删除(转)
- SQL FOREIGN KEY(约束)
- SQL FOREIGN KEY 约束
- SQL FOREIGN KEY 约束
- SQL FOREIGN KEY 约束
- SQL FOREIGN KEY 约束
- SQL FOREIGN KEY 约束
- SQL FOREIGN KEY 约束
- SQL FOREIGN KEY 约束
- SQL Server 2005 建立外键约束(foreign key)
- sql server2005 (INSERT 语句与 COLUMN FOREIGN KEY 约束 冲突
- 外键(Foreign Key)约束。
- SQL PRIMARY KEY 约束、SQL FOREIGN KEY 约束
- SQL FOREIGN KEY 约束 高级教程
- INSERT 语句与 FOREIGN KEY 约束""冲突
- INSERT 语句与 FOREIGN KEY 约束冲突
- 建立数据库关系图之 “ALTER TABLE 语句与 COLUMN FOREIGN KEY 约束冲突”
- SQLServer中有五种约束,Primary Key约束、Foreign Key约束、Unique约束、Default约束和Check约束,今天使用SQL Server2008来演示下这几种约束的
- 惊喜
- Fedora 13 telnet配置
- 如何创建一个 Windows 服务应用程序的安装项目在 Visual C# 中
- 浅析Oracle存储过程触发器在数据同步中的应用
- Assignment 1: PL/SQL stored procedure P9
- SQL FOREIGN KEY 约束的建立与删除(转)
- GAIA page
- 关于错误:"table is mutating, trigger/function may not see it
- 关于UUID,GUID,OCMB
- 正则表达式
- 规划分析输出表格设计思路(2010_09)
- 计算机常用英文单词
- Boot time kernel options
- P2P直播、点播技术学习经验