zoukankan      html  css  js  c++  java
  • sql进阶-触发器的实现

    /*
    
    1.触发器语法:
    
    Create Trigger 名称
        on 表名
        for [insert| update | delete] --三个选一个
        as
        
        --逻辑语句
        
        go
        
    2. 触发器中存在两个虚拟表,两个虚拟表的表结构跟操作的表的结构一致
    分别为inserted 表、 deleted表
    
    */


    Create Trigger [dbo].[tri_Student_i]
    On [dbo].[Student]
    for insert
    As
     declare @id int
     declare @name varchar(50)
     declare @age int


     select @id=studentid,@name=name ,@age=age from Inserted;


     update Student1 set studentid=@id,name=@name,age=@age  where name =@name and age =@age

     if @@rowcount=0
      begin
        insert into Student1 values (@id,@name,@age)

      end

    GO



    附上demo表结构:

    CREATE TABLE [dbo].[Student](
        [StudentID] [int] NOT NULL,
        [name] [varchar](50) NULL,
        [age] [int] NULL
    )
    CREATE TABLE [dbo].[Student1](
        [StudentID] [int] NOT NULL,
        [name] [varchar](50) NULL,
        [age] [int] NULL
    )
  • 相关阅读:
    C#微信开发
    3-4:字符串方法
    2-4-1 元组
    2-3-3 列表方法
    2-2-3:序列(字符串)乘法(p32)
    3-3字符串格式化(p47)
    2-2:分片
    2-1:Print date(p28)
    old.2.三次登录机会
    old.2.sum(1-2+3-4+...+99)
  • 原文地址:https://www.cnblogs.com/namedL/p/8962825.html
Copyright © 2011-2022 走看看