1个回答
展开全部
Foreign Key 外键
FOREIGN KEY约束为表中的一列或者多列数据提供数据完整性参照。通常是与PRIMARY KEY约束或者UNIQUE约束同时使用的。
在使用FOREIGN KEY约束时,需要注意以下几点:
1. 一个表最多只能参照253个不同的数据表,每个表也最多只能有253个FOREIGN KEY约束。
2. FOREIGN KEY约束不能应用于临时表。
3. 在实施FOREIGN KEY约束时,用户必须至少拥有被参照表中参照列的SELECT或者REFERENCES权限。
4. FOREIGN KEY约束同时也可以参照自身表中的其他列。
5. FOREIGN KEY约束,只能参照本身数据库中的某个表,而不能参照其他数据库中的表。跨数据库的参照只能通过触发器来实现
表级FOREIGN KEY约束定义风格为:
[CONSTRAINT constraint_name] FOREIGN KEY {(列名[,…n])} REFERENCES [拥有者.]参考表
(参考列#1[,参考列#2[…,参考列#16]])
举例:
1)在建立表的同时建立Foreign Key
CREATE TABLE orders (
O_Id INT NOT NULL PRIMARY KEY,
Order_No INT NOT NULL,
C_Id INT,
CONSTRAINT fk_Cusomer_Id FOREIGN KEY (C_Id) REFERENCES customers(C_Id)
);
2)用Alter修改表结构
ALTER TABLE orders ADD FOREIGN KEY (C_Id) REFERENCES customers(C_Id);
FOREIGN KEY约束为表中的一列或者多列数据提供数据完整性参照。通常是与PRIMARY KEY约束或者UNIQUE约束同时使用的。
在使用FOREIGN KEY约束时,需要注意以下几点:
1. 一个表最多只能参照253个不同的数据表,每个表也最多只能有253个FOREIGN KEY约束。
2. FOREIGN KEY约束不能应用于临时表。
3. 在实施FOREIGN KEY约束时,用户必须至少拥有被参照表中参照列的SELECT或者REFERENCES权限。
4. FOREIGN KEY约束同时也可以参照自身表中的其他列。
5. FOREIGN KEY约束,只能参照本身数据库中的某个表,而不能参照其他数据库中的表。跨数据库的参照只能通过触发器来实现
表级FOREIGN KEY约束定义风格为:
[CONSTRAINT constraint_name] FOREIGN KEY {(列名[,…n])} REFERENCES [拥有者.]参考表
(参考列#1[,参考列#2[…,参考列#16]])
举例:
1)在建立表的同时建立Foreign Key
CREATE TABLE orders (
O_Id INT NOT NULL PRIMARY KEY,
Order_No INT NOT NULL,
C_Id INT,
CONSTRAINT fk_Cusomer_Id FOREIGN KEY (C_Id) REFERENCES customers(C_Id)
);
2)用Alter修改表结构
ALTER TABLE orders ADD FOREIGN KEY (C_Id) REFERENCES customers(C_Id);
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询