开发者社区> 问答> 正文

当对动物表进行输入时,如果标价是一个奇数,则将其加1,然后将其插入表中

REATE TRIGGER CHANGEEVEN ON ANIMAL
AFTER INSERT 
AS
BEGIN
     IF LISTPRICE %2!=0
        SET LISTPRICE=LISTPRICE+1
    ELSE
        SET LISTPRICE=LISTPRICE;
END

展开
收起
祖安文状元 2020-01-05 14:46:21 367 0
1 条回答
写回答
取消 提交回答
  • 您想要一个instead of触发器。对于SQL Server,您的语法看起来非常错误。您不是在指inserted。

    它应该看起来像:

    CREATE TRIGGER CHANGEEVEN ON ANIMAL
    INSTEAD OF INSERT 
    AS
    BEGIN
        INSERT INTO ANIMAL (LISTPRICE, . . . )  -- list columns here
            SELECT (CASE WHEN LISTPRICE % 2 = 1 THEN LISTPRICE + 1
                         ELSE LISTPRICE
                    END),
                   . . .   -- rest of columns here
            FROM inserted i;
    END;
    
    2020-01-05 14:46:29
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载