社区
MS-SQL Server
帖子详情
关系级联的作用?
hljhl
2003-10-09 03:51:45
讲讲如何用设计关系的选联级更新删除,原来以为关系图是设置主键外键的图形化工具,不知道它的真正作用,能代替触发器码?能讲讲吗?谢谢!
...全文
325
3
打赏
收藏
关系级联的作用?
讲讲如何用设计关系的选联级更新删除,原来以为关系图是设置主键外键的图形化工具,不知道它的真正作用,能代替触发器码?能讲讲吗?谢谢!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
txlicenhe
2003-10-09
打赏
举报
回复
创建和维护数据库
级联引用完整性约束
当用户试图删除或更新外键所指向的键时,级联引用完整性约束使您得以定义 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
指定如果试图更新某行中的键值,而该行的键值由其它表的现有行中的外键所引用,则所有外键值也将更新成为该键指定的新值。如果在目标表上也定义了级联引用操作,则对在那些表中更新的键值同样采取指定的级联操作。
级联引用操作的示例可以基于 Northwind 中 Products 表上的 FK_Products_Suppliers 约束。该约束建立了从 Products 表中的 SupplierID 列到 Suppliers 表中的 SupplierID 主键列的外键关系。如果为约束指定了 ON DELETE CASCADE,则删除 SupplierID = 1 的 Suppliers 表中的行时也将删除 SupplierID = 1 的 Products 表中的三行。如果为该约束指定了 ON UPDATE CASCADE,则更新 Suppliers 表中从 1 到 55 的 SupplierID 值也将更新 Products 表中 SupplierID 值当前等于 1 的三行的 SupplierID 值。
不能为具有 INSTEAD OF 触发器的表指定级联操作。为表定义级联操作后,就不能向该表添加 INSTEAD OF 触发器。
多个级联操作
单独的 DELETE 或 UPDATE 语句可启动一系列级联引用操作。例如,假设有一个数据库包含三个表:TableA、TableB 和 TableC。针对 TableA 中的主键,用 ON DELETE CASCADE 定义 TableB 中的外键。针对 TableB 中的主键,用 ON DELETE CASCADE 定义 TableC 中的外键。如果 DELETE 语句删除 TableA 中的行,则该操作也将删除 TableB 中具有与 TableA 中所删除的主键匹配的任何外键中的所有行,然后删除 TableC 中具有与 TableB 中所删除的主键匹配的任何外键中的所有行。
由单个 DELETE 或 UPDATE 触发的一系列级联引用操作必须构成不包含循环引用的树。在 DELETE 或 UPDATE 所产生的所有级联引用操作的列表中,每个表只能出现一次。级联引用操作树到任何给定表的路径必须只有一个。树的任何分支在遇到指定了 NO ACTION 或默认为 NO ACTION 的表时终止。
触发器和级联引用操作
级联引用操作按下列顺序激发 AFTER 触发器:
首先执行由原始 DELETE 或 UPDATE 直接导致的所有级联引用操作。
当完成原始级联引用操作后,无论是否更新了任何行,都将激发原始表上的 AFTER 触发器。
然后激发级联引用操作链中表上的 AFTER 触发器,但只有已更新或删除了表中的一行或多行时才激发。
如果任何原始级联引用操作集生成任何错误,则产生错误,不激发 AFTER 触发器,并且回滚 DELETE 或 UPDATE。
AFTER 触发器可执行 DELETE 或 UPDATE 语句以启动其它级联引用操作链。每个辅助的引用操作链分开处理。这些辅助的引用操作链的行为与主链一样。在激发任何辅助触发器之前,完成所有的辅助引用操作。在每个独立的单元中,不定义执行级联引用操作和激发受影响的触发器的顺序。
具有 INSTEAD OF 触发器的表不能同时具有指定级联操作的 REFERENCES 子句。但是,在作为级联操作目标的表上,AFTER 触发器可在其它表或视图上执行 INSERT、UPDATE 或 DELETE 语句,以激发在该表或视图上定义的 INSTEAD OF 触发器。
级联引用约束目录信息
下列目录信息是关于级联引用约束的。
Transact-SQL OBJECTPROPERTY 函数支持 property 参数的下面两个新值。
值 对象 描述
CnstIsDeleteCascade 约束 用 ON DELETE CASCADE 定义的 FOREIGN KEY 约束
CnstIsUpdateCascade 约束 用 ON UPDATE CASCADE 定义的 FOREIGN KEY 约束
当指定 ON UPDATE CASCADE 或 ON DELETE CASCADE 时,REFERENTIAL_CONSTRAINTS 信息架构视图返回 UDPATE_RULE 或 DELETE_RULE 列中的 CASCADE。当指定 ON UPDATE NO ACTION 或 ON DELETE NO ACTION,或者根本没有指定 ON UPDATE 或 ON DELETE 时,返回 NO ACTION。
当指定 CASCADE 时,sp_fkeys 和 sp_foreignkeys 所返回的 UPDATE_RULE 和 DELETE_RULE 列被设置成 1,当指定或默认为 NO ACTION 时则返回 0。
当将外键指定为 sp_help 的对象时,输出结果集包含下面两个新列。
列名 数据类型 描述
delete_action nvarchar(9) 表示删除操作是 CASCADE、NO ACTION 还是暂缺(不可用)。
update_action nvarchar(9) 表示更新操作是 CASCADE、NO ACTION 还是暂缺(不可用)。
©1988-2000 Microsoft Corporation。保留所有权利。
txlicenhe
2003-10-09
打赏
举报
回复
级联更新和级联删除:
eg1:
alter table mylocation
add constraint fk_mylocation_myname foreign key(myname) references myname(name)
on update cascade on delete cascade
eg2:
alter table 表2
add constraint fk_mylocation_myname foreign key(字段1,字段2)references 表1(字段1,字段2)
on update cascade on delete cascade
welyngj
2003-10-09
打赏
举报
回复
一般尽量使用约束保证数据的完整性。
但触发期可以实现约束无法实现的功能。
毕业设计智能电网
级联
故障建模研究matlab完整源码带说明文档.7z
毕业设计智能电网
级联
故障建模研究matlab完整源码带说明文档.7z 电网的可靠性在很大程度上取决于电网组件及其相关通信和控制网络之间的相互依赖
关系
。 此外,系统运营商在处理
级联
故障方面的专业知识可以在紧急情况下发挥关键
作用
。项目建立了一种基于随机马尔可夫链的模型,即相互依赖的随机抽象状态空间演化模型(I-SASE),该模型能够捕捉电网中
级联
故障的动态以及通信网络中信息传递的收益和风险。一个先前开发的基于马尔可夫链的模型被改进,以捕获健壮的通信基础设施的好处和它对网络攻击的脆弱性之间的权衡。通过合理选择马尔可夫链的状态变量,实现了电网组件复杂相互
作用
的状态空间约简。在缓解行动期间,系统操作员的错误概率的影响作为马尔可夫链状态变量的函数被纳入模型。我们观察到一个回报递减的点,超过这个点,网络威胁和人为错误的影响就超过了拥有更多信息的好处。在电网和通信网络之间实现了最小
级联
期望值的最优相互依赖水平。I-SASE模型的好处有三个方面。首先,该模型捕获了电网各层之间的相互依赖性和动态相互
作用
,这比目前的文献更现实,因为目前的文献没有在分析模型中包括网络威胁的影响。
实体
关系
抽取的经典方式-casrel
CasRel(Cascade Relational Proposal Network)是一种用于
关系
抽取的神经网络模型,由复旦大学自然语言处理实验室在2019年提出。
关系
抽取是自然语言处理中的一个重要任务,旨在从文本中识别实体之间的语义
关系
。CasRel模型采用了一种
级联
的框架,将
关系
抽取分为两个步骤:实体识别和
关系
分类。 CasRel模型的主要特点包括: 1. **
级联
框架**:CasRel模型首先使用一个实体识别模块来检测文本中的所有实体,然后对于每一对实体,使用
关系
分类模块来判断它们之间是否存在某种特定的
关系
。这种
级联
的方式允许模型更加专注于实体之间的相互
作用
,而不是单独考虑实体或
关系
。 2. **三元组表示**:CasRel模型输出的是一种三元组的形式,即(头实体,
关系
,尾实体)。这种表示方式更加直观和符合自然语言中的
关系
描述。 3. **
关系
分类的注意力机制**:在
关系
分类阶段,CasRel模型使用了一种注意力机制来选择与特定
关系
相关的文本片段。这种机制可以帮助模型更好地理解实体之间的上下文
关系
。 4. **端到端训练**:CasRel模型可以端到端地进行训练,即实体识别和关
多波长
级联
拉曼光纤激光器的设计
基于稳态条件下描述光纤中受激拉曼散射效应的光功率耦合方程组, 提出一种新的多波长
级联
拉曼光纤激光器的设计算法。结合遗传算法和打靶法的优点, 采取对每一代种群中少数优良个体进行几次打靶, 使得种群中目标函数最优化值附近的个体加速收敛。以500 m掺磷光纤为增益介质、光纤布拉格光栅构成谐振腔的三波长(1427 nm, 1455 nm, 1480 nm)
级联
拉曼光纤激光器为例, 采用该算法计算了其输出特性。结果表明,总输出功率与抽运功率近似成线性
关系
, 斜率效率约51%; 由于谐振腔中三个输出波长相互之间的受激拉曼散射
作用
产生的能量转移, 使得输出的长波长斯托克斯光斜率效率大于短波长斯托克斯光斜率效率。
论文研究-国际贸易网络上经济危机传播的仿真分析与研究.pdf
为了深刻理解金融危机的传播过程与其内在的传播机制,为国家确定国际间的经济
关系
与政策提供可靠的理论依据,运用复杂科学理论,同时利用联合国商品贸易统计数据库,构建了国际贸易
关系
的有向加权网络,通过计算机仿真模拟了
级联
扩散过程,提出了基于网络连边失效的经济危机传播分析方法。仿真结果显示,贸易国之间的经济依赖
关系
是影响网络上危机爆发的重要成因,整个
级联
过程涌现出的是相同空间率先蔓延的传播特征,并着重分析了11个重要节点在
级联
扩散过程中的传播行为。上述揭示对于政府制定与改善宏观经济的贸易政策具有积极的
作用
,同时也为应对未来危机的爆发提供了有益的启示。
论文研究-基于双毁伤因素的域间路由系统
级联
失效模型.pdf
级联
失效建模研究对检测和防御
级联
失效攻击具有重要意义。针对现有研究存在毁伤因素单一、失效条件不符合实际等问题,提出了基于双毁伤因素的域间路由系统
级联
失效模型。该模型综合考虑了UPDATE报文和流量重分配对
级联
失效过程的影响,并基于两者的相互
作用
关系
,系统刻画了
级联
失效过程。实验结果表明,该模型能够较准确地模拟域间路由系统
级联
失效过程,验证了模型的有效性。相对于已有模型,使模型与真实数据的预测偏差降低了35%。
MS-SQL Server
34,590
社区成员
254,589
社区内容
发帖
与我相关
我的任务
MS-SQL Server
MS-SQL Server相关内容讨论专区
复制链接
扫一扫
分享
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章