社区
MySQL
帖子详情
Mysql 设置foreign key 目的是什么?
nianzhang747
2009-08-10 10:50:45
foreign key 很重要吗?
不设置可以不
...全文
423
6
打赏
收藏
Mysql 设置foreign key 目的是什么?
foreign key 很重要吗? 不设置可以不
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
wmp926098
2011-11-06
打赏
举报
回复
除了可以用 constraint table1FK foreign key(外键)reference table2(主键)设置外键,还可以其他方式设置吗?
sciland
2009-08-11
打赏
举报
回复
MYSQL 外键定义
建立外键的前提: 本表的列必须与外键类型相同(外键必须是外表主键)。
外键作用: 使两张表形成关联,外键只能引用外表中的列的值!
指定主键关键字: foreign key(列名)
引用外键关键字: references <外键表名>(外键列名)
事件触发限制: on delete和on update , 可设参数cascade(跟随外键改动), restrict(限制外表中的外键改动),set Null(设空值),set Default(设默认值),[默认]no action
例如:
outTable表 主键 id 类型 int
创建含有外键的表:
create table temp(
id int,
name char(20),
foreign key(id) references outTable(id) on delete cascade on update cascade);
说明:把id列 设为外键 参照外表outTable的id列 当外键的值删除 本表中对应的列筛除 当外键的值改变 本表中对应的列值改变。
vinsonshen
2009-08-10
打赏
举报
回复
主要是为了保证数据的完整性
在一些项目开发中,有外键的话, 利用一些工具会大大提高开发效率。
denniswwh
2009-08-10
打赏
举报
回复
1、foreign key是为了约束与主表之间的数据一致性,避免垃圾数据的产生,
2、当然可以不设置,只要程序逻辑是正确的就行。
fcoolx
2009-08-10
打赏
举报
回复
数据的完整性
netxuning
2009-08-10
打赏
举报
回复
学习
MySQL
外键约束(FOR
EIGN
KEY
)是什么?
对
MySQL
中的外键约束从基础知识开始,说明了创建外键约束的原则,语法及特性,用案例的方式对外键约束进行解说。
mysql
for
eign
key
references,使用REFERENCES与和不与FOR
EIGN
KEY
之间的区别?
Basically I'd like to know the difference between using REFERENCES with or without a for
eign
key
.I have these 2 examples:CREATE TABLE Employee(id INT,name VARCHAR(50),birthYear INT,boss ...
mysql
for
eign
key
references_
mysql
– 使用REFERENCES有无FOR
EIGN
KEY
的区别?
基本上我想知道使用REFERENCES有或没有外键的区别.我有这两个例子:CREATE TABLE Employee(id INT,name VARCHAR(50),birthYear INT,boss INT REFERENCES Employees(id),worksAt INT NOT NULL REFERENCES Department(id) ON ...
mysql
set for
eign
key
_确认将
MySQL
SET FOR
EIGN
KEY
CHECKS
设置
为= 1?
您可以借助变量来确认SET FOR
EIGN
KEY
CHECKS是否
设置
为= 1@@for
eign
_
key
_checks;语法如下-select@@for
eign
_
key
_checks;您可以使用SHOW VARIABLES命令。语法如下-showvariableslike'for
eign
%';现在您可以实现这两种语法。情况1-使用变量@@ for
eign
_
key
_checks。查询如下-...
如何 drop 有 for
eign
key
的
mysql
table?
父子表定义 一张 “订单表 Orders” 中有一个字段 “customer_id” 顾客id,指向顾客表 (Customers) 的主键(id字段),那么 顾客表就叫做“父表”或“被引用表”,而顾客表被称为“子表”或“引用表”。 当 drop 父表时,必须先删除掉“子表”,否则
mysql
会报告: ERROR 1217 (23000): Cannot delete or update a parent row: a for
eign
key
constraint fails 如果两张表互相之间相互引用,
MySQL
57,063
社区成员
56,759
社区内容
发帖
与我相关
我的任务
MySQL
MySQL相关内容讨论专区
复制链接
扫一扫
分享
社区描述
MySQL相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章