帮我写一下这个触发器

来源:百度知道 编辑:UC知道 时间:2024/05/26 21:51:07
首先我想问一下,如果想在A表上建一个触发器,当删除A表上的记录后,相应的也把B表中的相同的记录删除,是不是一定要建立A、B两个表之间的主键和外键的约束?
我想在A表上建个触发器,当在A表上插入一条记录后,就检查B表上是不是有相同的信息,如果有的话就提示错误。该怎么做呢?最好能在系统中弹出错误提示窗口(我用的是powerbuilder9.0的自带的数据库)。
A表主键是a,外键是B表中的b,其他列是c、d;B表主键是b其他列是c、d。如果我的表不合理的话,可以自己举例子。希望能得到高人的指点,我可以把我全部的积分都给他。谢谢!

两个表要同时触发操作,就必须要有主外键关系

create trigger InsA on A for insert as
begin
declare @strMessage nvarchar(50)
declare @b int
if exists(select * from B where b in (select @b from A))
return @strMessage='插入记录失败'
else
insert into A ...

你是不是应该把你使用的数据库给列一下,不然怎么给你例子呀!