社区
疑难问题
帖子详情
Primary key 和Foreign key的问题.
rocky_chencn
2003-08-25 09:19:28
当在两个table之间建立relationships后,是不是无法update Primary key 或Foreign key 的值.有无办法同时update 两边数据.
...全文
115
5
打赏
收藏
Primary key 和Foreign key的问题.
当在两个table之间建立relationships后,是不是无法update Primary key 或Foreign key 的值.有无办法同时update 两边数据.
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
CrazyFor
2003-08-25
打赏
举报
回复
参考:
ALTER TABLE 表 ADD
CONSTRAINT 外键名 FOREIGN KEY
(
字段名
) REFERENCES 主键表 (
字段名
) ON DELETE CASCADE ON UPDATE CASCADE
最简单的办法就是建关系图,选中级联更新,级联删除.
zarge
2003-08-25
打赏
举报
回复
级联引用完整性约束
新增信息 - 2001 年 9 月
当用户试图删除或更新外键所指向的键时,级联引用完整性约束使您得以定义 Microsoft® SQL Server™ 2000 所采取的操作。
CREATE TABLE 和 ALTER TABLE 语句的 REFERENCES 子句支持 ON DELETE 和 ON UPDATE 子句:
[ ON DELETE { CASCADE | NO ACTION } ]
[ ON UPDATE { CASCADE | NO ACTION } ]
如果没有指定 ON DELETE 或 ON UPDATE,则默认为 NO ACTION。NO ACTION 指定的行为与 SQL Server 的早期版本中发生的行为相同。
ON DELETE NO ACTION
指定如果试图删除某行,而该行含有由其它表的现有行中的外键所引用的键,则产生错误并回滚 DELETE。
ON UPDATE NO ACTION
指定如果试图更新某行中的键值,而该行含有由其它表的现有行中的外键所引用的键,则产生错误并回滚 UPDATE。
CASCADE 允许在表间级联键值的删除或更新操作,这些表的外键关系可追溯到执行修改的表。不能为任何具有 timestamp 列的外键和主键指定 CASCADE。
ON DELETE CASCADE
指定如果试图删除某行,而该行含有由其它表的现有行中的外键所引用的键,则也将删除所有包含那些外键的行。如果在目标表上也定义了级联引用操作,则对从那些表中删除的行同样采取指定的级联操作。
ON UPDATE CASCADE
指定如果试图更新某行中的键值,而该行的键值由其它表的现有行中的外键所引用,则所有外键值也将更新成为该键指定的新值。如果在目标表上也定义了级联引用操作,则对在那些表中更新的键值同样采取指定的级联操作。
pengdali
2003-08-25
打赏
举报
回复
连级更新
alter table mylocation
drop constraint fk_mylocation_myname
alter table mylocation
add constraint fk_mylocation_myname foreign key(myname)references myname(name)
on update cascade on delete cascade
liuyun2003
2003-08-25
打赏
举报
回复
如果你想UPDATE primary key的值必须保证没有任何foreign key和它关联,否则是无法进行相应操作的。同理你更新FOREIGN KEY的时候,也必须保证它可以和一个PRIMARY KEY对应上。可以通过建立触发器来处理两边同时UPDATE的问题。
amtyuranus
2003-08-25
打赏
举报
回复
写一个触发器
MySQL 数据库的基本操作(数据完整性约束)
# 数据完整性六项约束 主键约束(
PRIMARY
KEY
) 自增约束(AUTO_INCREMENT
PRIMARY
KEY
) 唯一约束(UNIQUE) 默认约束(DEFAULT) 非空约束(NOT NULL) 外键约束(FOR
EIGN
KEY
) -------------------------------...
有关
primary
key
和 for
eign
key
1.
primary
key
☆如果一个table有
primary
key
,那么这个
primary
key
的value就不能为null,而且每条record就不能重复(完全相同),否则会发生如下错误 A.当
primary
key
置为null时:ERROR 1048 (23000): Column '...
1Z0-051 QUESTION 35
Primary
key
和for
eign
key
的用法
35. Which two statements are true regarding constraints?... A table can have only one
primary
key
and one for
eign
key
. B. A table can have only one
primary
key
but multiple for
eign
k
Oracle数据库-
primary
key
/for
eign
key
和references关系
主要介绍一下个人对主键(
primary
key
)、外键(for
eign
key
)、候选键(Candidate
key
)、超键(super
key
)、references的总结 概念: 主键:用户选择元组标识的一个候选键,主键不允许为空 外键:来描述两个表...
mysql
primary
unique for
eign
_Mysql中主键(
Primary
Key
)、外键(For
eign
Key
)、唯一键( Unique
Key
)、索引(Index)的说明...
本文主要介绍Mysql几种键和索引:MySQL中有三种
Key
和一个Index:
Primary
Key
(主键), Unique
Key
(唯一键),For
eign
Key
(外键)和 Index(索引)四者的区别如下:定义:主键(
Primary
Key
):唯一标识一条记录,不能有重复,...
疑难问题
22,207
社区成员
121,730
社区内容
发帖
与我相关
我的任务
疑难问题
MS-SQL Server 疑难问题
复制链接
扫一扫
分享
社区描述
MS-SQL Server 疑难问题
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章