sql 触发器的使用,
有两张表User(id,name,sex)跟Information(id,name,..........)id是外码引用User的id,级连删除。我想在像表User插入(...
有两张表 User(id,name,sex)跟 Information(id,name,..........) id是外码引用User的id,级连删除。
我想在像表User 插入(001.张三,男)时 向information添加一行(001,张三,后面的不管了) 这个触发器怎么写代码,我不懂的是,如何找到向User表最新插入的数据001然后把这个值插入到information里面去
2 当我改变 information里面update了 张三,把他改成李四,那么User里面也要跟着改成李四 怎么做 展开
我想在像表User 插入(001.张三,男)时 向information添加一行(001,张三,后面的不管了) 这个触发器怎么写代码,我不懂的是,如何找到向User表最新插入的数据001然后把这个值插入到information里面去
2 当我改变 information里面update了 张三,把他改成李四,那么User里面也要跟着改成李四 怎么做 展开
展开全部
--关于问题1
CREATE TRIGGER TRI1
ON User
FOR INSERT
AS
BEGIN
INSERT INTO Information
SELECT id,
name
FROM INSERTED
END
GO
注意:name后面的列,如果不管的话,给个默认值,否则会出现插入错误。
例如:
INSERT INTO Information
SELECT id,
name,
NULL,
NULL --等等
FROM INSERTED
关于问题2~
CREATE TRIGGER TRI2
ON User
FOR UPDATE
AS
IF UPDATE(name)
BEGIN
UPDATE Information
SET A.name= B.name
FROM Information A, INSERTED B
WHERE A.id= B.id
END
GO
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询