此文章主要向大家探讨的是SQL Server2000级联删除的某些问题,假如你对这SQL Server2000级联删除技术,心存好奇的话,以下的文章将会揭开它的神秘面纱,接下来的SQL server内容就是文章的具体介绍,望你浏览完以下的内容会有所收获。
1.建立四个表:
create table client( c_id int identity(1,1), c_name nvarchar(255) unique, c_pass nvarchar(255), c_sex bit, c_mail varchar(255), c_qq varchar(255), primary key(c_id) ); create table album_kind( k_id int identity(1,1), k_name nvarchar(255), k_desc nvarchar(255), primary key(k_id) ); create table album( a_id int identity(1,1), a_name nvarchar(255), a_desc nvarchar(255), a_create_date datetime, a_times bigint, c_id int, k_id int, primary key(a_id), foreign key(c_id) references client(c_id) on delete cascade, foreign key(k_id) references album_kind(k_id) on delete cascade ); create table album_word( aw_id int identity(1,1), aw_title nvarchar(255), aw_content nvarchar(500), commit_date datetime, a_id int, c_id int, primary key(aw_id), foreign key(a_id) references album(a_id) on delete cascade, foreign key(c_id) references client(c_id) on delete cascade );
这时(创建第四个表的时候)SQL Server2000级联删除会报告错误:
将 FOREIGN KEY 约束 'FK_album_word_album' 引入表 'album_word' 中将导致循环或多重级联路径。请指定 ON DELETE NO ACTION 或 ON UPDATE NO ACTION,或修改其它 FOREIGN KEY 约束。[Microsoft][ODBC SQL Server Driver][SQL Server]未能创建约束。请参阅前面的错误信息。
2.这时候我们去掉第四个表中的级联删除:
"on delete cascade"
再次执行。。。。通过
3.创建一个触发器可以解决这个问题(接以上1.2步):
CREATE TRIGGER album_word_client ON client FOR INSERT, UPDATE, DELETE AS delete album_word from album_word join deleted on album_word.c_id = deleted.c_id
完成!
语法:
create trigger 随便一个名称(比如b_a) on 表a
for delete as
delete 表b from 表b join deleted on 表b.a表外键=deleted.a表主键
(当删除a中某条记录,b中相关联记录也会相应删除)
以上的相关内容就是对SQL Server2000级联删除的一些问题的介绍,望你能有所收获。
很多使用Windows 7系统的朋友都想小编反应,假如暂停使用电脑,鼠标会出现停顿现象,这是怎么回事呢 该怎么解决呢 下面就和小编一起去看下Windows 7 usb鼠标停顿的解决方法吧。 由于Windows 7系统中有一项USB选择性暂停造成的。这项设置主要为了节电,当他检测到用户没有对系统进行...
正在启动windows时间长怎么办 小编带来了Windows 7/8.1正在启动windows时间长解决方法,假如有朋友在安装完Windows系统之后一直停留在“正在启动windows”的话,不妨试一试下文的方法哦~ 原因:Windows 7/8.1不完全支持UEFI,需要CSM(Comp...
在Windows 7系统的默认设置中,当Windows 7系统处于休眠状态时,会同时断网的。如此一来,无论你正在使用迅雷还是快车等下载工具,同样可以在休眠状态下继续完成下载,最大限度做到从身边的小事开始支持环保。下面我们就详细介绍操作步骤,帮助Windows 7系统用户实现这一节能目标。 首先需要...
在某些电脑中,机器内部蜂鸣器与系统的声音输出方案是相关联的,这样一来会导致当系统输出声音时,即使电脑没有连接外部音响或耳机,也会通过内置蜂鸣器发出“嘟嘟哔哔”的声音。这个问题主要出现在Windows 7电脑中,假如你的电脑恰好遇到了这样的问题,可参考下面的方法来解决: 1、在桌面“计算机”图标上右...
Windows 7 64位系统开机后提示"press any key to restart",无法进入系统了,具体现象如下所示: 故障分析: 故障的主要原因还是硬盘的问题,可以先检查是不是接触不良或坏了,进行修复或更换即可。 解决方法: 1、开机按F8不动到高级选项出现在松手,选“...
一些用户的Windows 7系统开机后出现黑屏,代码为 Windows无法启动: WindowsSystem32ConfigSystem”。这个问题该如何修复呢?现在小编就给大家分析一下吧。 其实这个代码的意思是引导文件丢失了,引导文件(NTLDR)一般存放于C盘根目录下,是一个具有隐藏和只读属性...