跟Delphi和 SQL Server 有关的问题。。。急!!在线等待!多谢了! 我的问题是:在一个表中删除一条记录引起另一个表匹配的行或者整个表的对应删除,也就是主记录的子记录的级联删除操作,听高人说可以用SQL Server里的触发器(数据库是用SQL Server建的),可是我不知道怎么操作,请各位高手指点。多谢了! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 create trigger 触发器名on 表名for delete as begin ...........endgo 呵呵!楼上的说的很详细了!顶吧!先在数据库中建立一个触发器create trigger 触发器名on 表名for delete as begin ...........endgo然后再调用! 找一本sql server的书籍好好的看看吧,你连这个都不了解,给你说了也没有用,一个形象的比喻就是触发器就象一条看门的狗,当满足条件的时候就出发,不满足就不做,而这个过程都再服务器端完成,它的好处在于减轻客户端的负担和网络负担,只需客户端给一个条件,那么服务器就执行,我们也可以在客户端实现,只是这样做的网络流量就特别大,尤其是那种银行系统,股票系统这种东西,而且客户端的负担也增加了! cqwty(笨小孩) 说的很形象 就是这个样子的 你可以建一个触发器 建议你找本关于触发器的书看看 --假设你要在table1表中的插入事件中做一些事情:create trigger a --触发器名on table1for insert as begin print '我插,我插!'--这就是触发器 print '别插了,我要受不了了!'--要做的事情endgo明白了吧! 刚接触SQL Server,请大家谅解!!!多谢!!删除从表没有问题,可是从表里面对应的列怎么更新呢?如:A与B是主从表的关系,A中字段:TestType_NO,TestType_Name, B中字段:Chapter_NO,Chapter_Name,TestType_NO. 现在删除A中的一条记录,确实能删除B表中对应的记录,可是B表中的Chapter_NO如何随之调整呢. 可以在触发器中加相应的UPDATE语句来实现的啊 還有一種,根本不需要寫一個字,用Diagrams的级联删除或新增功能 同意dreamyyuan,在SQL的约束里好好看看,你会有收获 create trigger my_triggeron my_table_afor deleteasbegindelete from my_table_b where my_table_b.id not in (select my_table_a.id from my_table_a)end试试看,也许可以的哦。 造成级联删除,在sql server里不要求它进行级联不就可以了吗??要用trigger的话,看来楼主还是好好看看有关sqlserver方面的书籍吧,嘿嘿[email protected] jiangshi99(僵尸先生99) 真牛啊 在delphi中如何使用fastreport 窗口显示问题 double型怎么转化成DWORD型? 存储过程的问题,急! 关于摄像头的编程问题 codedudu,快来拿分. XE5的单步调试功能好像比delphi2007差好多啊 CRM是什么东西?有人知道吗? 我发现这里的高手越来越少了,真可悲呀· 一个关于MaskEdit的问题? 季度BT奖评选 50分急求,怎么去掉字符串中多余的空格?!
on 表名
for delete as
begin
...........
end
go
楼上的说的很详细了!
顶吧!
先在数据库中建立一个触发器
create trigger 触发器名
on 表名
for delete as
begin
...........
end
go
然后再调用!
就是这个样子的
你可以建一个触发器
建议你找本关于触发器的书看看
create trigger a --触发器名
on table1
for insert as
begin
print '我插,我插!'--这就是触发器
print '别插了,我要受不了了!'--要做的事情
end
go
明白了吧!
删除从表没有问题,可是从表里面对应的列怎么更新呢?
如:A与B是主从表的关系,
A中字段:TestType_NO,TestType_Name,
B中字段:Chapter_NO,Chapter_Name,TestType_NO.
现在删除A中的一条记录,确实能删除B表中对应的记录,可是B表中的Chapter_NO如何随之调整呢.
on my_table_a
for delete
as
begin
delete from my_table_b where my_table_b.id not in (select my_table_a.id from my_table_a)
end
试试看,也许可以的哦。
[email protected]