可不可以控制触发器的触发对象?

philiu 2001-05-09 04:36:00
现有表a 字段id char(5) 字段conn varchar(50)记录本条记录在哪个表中还有
  表a1 字段id char(5)
  表a2 字段id char(5)
......

A A1 A2 A3 ......An
id conn id id id ......
10001 a1,a2 10001 10001 10004 ......
10002 a1 10002 10003 10003
10003 a2,a3 10004
10004 a1,a3


想在a建立触发器,删除一条记录,在A1,A2,A3......删除相关记录,如在A中del 10003 则A2,A3......有10003记录的表中10003全部del 

同理也在An中相应建立del触发器,以维护数据完整性。

另外有别的方法维护也可以,请大家帮帮忙,最好写出代码,谢谢。
...全文
104 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
nononono 2001-05-10
  • 打赏
  • 举报
回复
如果A1,A2...An的结构相同, 我可以肯定: 你应该把它们变成一个表.

如果你坚持这个样子, 你还需要一个表,用来表示现在到底有哪些An. 当然,使用系统本身的sysobject表也可以.
philiu 2001-05-10
  • 打赏
  • 举报
回复
  我做的是网上考试的东西。A用来存放试题(id为题号),A1,A2...An(数量不定)是形成的试卷,现在修改表A,如删除了一道题,必定引起A1,A2...An中有那道题的试卷(该题也应该相应从中删除)。我就是要触发器触发这个事件。

  An不是固定的,且不一定连续,而且A位于库1;A1,A2...An位于库2 这个触发器应该怎样写。大家帮帮忙好吗,要交货了!
nononono 2001-05-10
  • 打赏
  • 举报
回复
你做的是不是个工资管理? 呵呵
nononono 2001-05-10
  • 打赏
  • 举报
回复
我感觉: 你的数据库设计有问题.
philiu 2001-05-09
  • 打赏
  • 举报
回复
就是An不是固定的,所以有点烦,An中也要设置触发器,当删除数据时也要删A中的数据
nononono 2001-05-09
  • 打赏
  • 举报
回复
如果a1,a2,a3,...an中的n不大(比如小于20)且是固定的, conn字段可以不用. 其实conn字段本身就是冗余的.

create trigger name on Table_A for delete as

delete from Table_A1 where id in (select id from deleted)
delete from Table_A2 where id in (select id from deleted)
delete from Table_A3 where id in (select id from deleted)
delete from Table_A4 where id in (select id from deleted)
...

return

an中的del触发器要做什么?
philiu 2001-05-09
  • 打赏
  • 举报
回复
忘了说了,sql server 7.0环境

34,588

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧