哦,这个级联更新,是针对,更新主表,那么自动更新附表的技术,但是不能倒过来,比如像你说的,如果更新附表,那么就会报错。对了,你用的是sql server 2005不
我刚才尝试用触发器,也实现不了。所以我觉得,能不能把update tb2的语句修改为update tb1的语句,比如下面的:update tb1 set code = left(code,1)+'1' + SUBSTRING(code,2,LEN(code)) where tb1.code in (select code from tb2 where code ='要更新tb2的code')
update tb1
set code = left(code,2)+'1' + SUBSTRING(code,3,LEN(code))
select * from tb1
/*
code
1111
2212
3313
*/
--虽然没有更新附表,但是级联更新
select * from tb2
/*
code
1111
2212
3313
*/
--设置外键约束
ALTER TABLE [dbo].[TestDetail] WITH CHECK
ADD CONSTRAINT [FK_TestDetail_Test] FOREIGN KEY([TestID])
REFERENCES [dbo].[Test]([TestID])
ON UPDATE CASCADE --设置级联更新
GO
哦,这个级联更新,是针对,更新主表,那么自动更新附表的技术,但是不能倒过来,比如像你说的,如果更新附表,那么就会报错。对了,你用的是sql server 2005不
我刚才尝试用触发器,也实现不了。所以我觉得,能不能把update tb2的语句修改为update tb1的语句,比如下面的:update tb1
set code = left(code,1)+'1' + SUBSTRING(code,2,LEN(code))
where tb1.code in (select code from tb2 where code ='要更新tb2的code')