首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

SQL Server2000触发器实现一个表的更新?解决办法

2013-12-04 
SQL Server2000触发器实现一个表的更新?SQL?SERVER?2000触发器[解决办法]--drop table moctacreate table

SQL Server2000触发器实现一个表的更新?
SQL Server2000触发器实现一个表的更新?解决办法 SQL?SERVER?2000 触发器
[解决办法]

--drop table mocta

create table purtb
(请购单号 varchar(10),参考单号 varchar(10),备注 varchar(50))

create table mocta
(工单单号 varchar(10),订单单号 varchar(10))


insert into purtb
select '101','201','301' union all
select '102','302','302' union all
select '103','备料','备料'

insert into mocta
select '201','301' union all
select '202','302'
go

--drop trigger trigger_purtb_insert



create trigger dbo.trigger_purtb_insert
on purtb
for insert
as

update purtb
set 备注 = isnull((select t1.订单单号
                   from mocta t1 
                   where i.参考单号 = t1.工单单号),
                  i.参考单号)
from inserted i
where purtb.请购单号 = i.请购单号 and
                  purtb.参考单号 = i.参考单号
          

go


insert into purtb(请购单号,参考单号)
select '104','201'
union all select '105','xxx'




--查询
select *
from purtb
/*
请购单号参考单号备注
101    201    301
102    302    301
103    备料    备料
104    201    301
105    xxx    xxx
*/

热点排行