这样的,在IF下执行了了句子,ELSE IF还会执行的?
比方我这个触发器,我要如果UPDATE(cInvDefine4),那么就不执行下面的,(当然可以用return)ELSE IF(UPDATE(cInvDefine4))应该是不会执行的了吧,但同时更新就会出错。
还有别的什么办法?
ALTER TRIGGER [UPdateChinaName]
ON [Inventory]
after --INSERT,--DELETE,
UPDATE
AS
--BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
IF UPDATE(cEnglishName)
BEGIN
UPDATE [Inventory] SET cInvDefine4=B.cEnglishName
FROM [Inventory] A INNER JOIN inserted B ON A.cInvCode=B.cInvCode
END
ELSE IF UPDATE(cInvDefine4)
BEGIN
UPDATE [Inventory] SET cEnglishName=B.cInvDefine4
FROM [Inventory] A INNER JOIN inserted B ON A.cInvCode=B.cInvCode
END
update [Inventory] SET cEnglishName='222',
cEnglishName='003'
where cInvCode='001'
比方我这个触发器,我要如果UPDATE(cInvDefine4),那么就不执行下面的,(当然可以用return)ELSE IF(UPDATE(cInvDefine4))应该是不会执行的了吧,但同时更新就会出错。
还有别的什么办法?
ALTER TRIGGER [UPdateChinaName]
ON [Inventory]
after --INSERT,--DELETE,
UPDATE
AS
--BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
IF UPDATE(cEnglishName)
BEGIN
UPDATE [Inventory] SET cInvDefine4=B.cEnglishName
FROM [Inventory] A INNER JOIN inserted B ON A.cInvCode=B.cInvCode
END
ELSE IF UPDATE(cInvDefine4)
BEGIN
UPDATE [Inventory] SET cEnglishName=B.cInvDefine4
FROM [Inventory] A INNER JOIN inserted B ON A.cInvCode=B.cInvCode
END
update [Inventory] SET cEnglishName='222',
cEnglishName='003'
where cInvCode='001'
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货