关于触发器

rkjk123456 2012-07-12 01:20:21
CREATE TRIGGER [JU_Uint_People_XueliAndZhichengUpdate] ON [dbo].[JU_Unit_People]
FOR UPDATE
AS
IF UPDATE(xueli)
begin
INSERT INTO JU_People_Record(ysxl,id_rl) values(Deleted.xueli,Deleted.id_rl)
end
IF UPDATE(ZhiCheng)
begin
INSERT INTO JU_People_Record(yszc,id_rl) values(Deleted.ZhiCheng,Deleted.id_rl)
end


这是代码 SQL 2000 想实现的是 当JU_Unit_People的 xueli和 ZhiCheng字段发生修改时触发 但是提示我这里不能用列名。。触发器真不懂 请大神们帮帮我
...全文
49 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
rkjk123456 2012-07-12
  • 打赏
  • 举报
回复
(⊙o⊙)… 秀逗了 本来打算子查询的 然后直接这么写看行不行 忘记改了
quchen520 2012-07-12
  • 打赏
  • 举报
回复
[Quote=引用楼主 的回复:]
CREATE TRIGGER [JU_Uint_People_XueliAndZhichengUpdate] ON [dbo].[JU_Unit_People]
FOR UPDATE
AS
IF UPDATE(xueli)
begin
INSERT INTO JU_People_Record(ysxl,id_rl) values(Deleted.xueli,Deleted.id_……
[/Quote]

触发器里面可以Deleted.xueli 这样的语法么?
rkjk123456 2012-07-12
  • 打赏
  • 举报
回复
为什么Inset into values 不行 inset into select 就可以 真不懂
xuam 2012-07-12
  • 打赏
  • 举报
回复
INSERT INTO JU_People_Record(yszc,id_rl) values(赋值变量,赋值变量)
[Quote=引用 2 楼 的回复:]
引用 1 楼 的回复:
SQL code
CREATE TRIGGER [JU_Uint_People_XueliAndZhichengUpdate] ON [dbo].[JU_Unit_People]
FOR UPDATE
AS
IF UPDATE(xueli)
begin
INSERT INTO JU_People_Record(ysxl,id_rl) select xueli,……
[/Quote]
rkjk123456 2012-07-12
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]
SQL code
CREATE TRIGGER [JU_Uint_People_XueliAndZhichengUpdate] ON [dbo].[JU_Unit_People]
FOR UPDATE
AS
IF UPDATE(xueli)
begin
INSERT INTO JU_People_Record(ysxl,id_rl) select xueli,id_rl f……
[/Quote]
能说下为什么要这么用才可以么
xuam 2012-07-12
  • 打赏
  • 举报
回复
CREATE TRIGGER [JU_Uint_People_XueliAndZhichengUpdate] ON [dbo].[JU_Unit_People]   
FOR UPDATE
AS
IF UPDATE(xueli)
begin
INSERT INTO JU_People_Record(ysxl,id_rl) select xueli,id_rl from Deleted
end
IF UPDATE(ZhiCheng)
begin
INSERT INTO JU_People_Record(yszc,id_rl) select ZhiCheng,id_rl from Deleted
end

22,207

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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