zoukankan      html  css  js  c++  java
  • 触发器添加数据不重复例子

    --创建表
    CREATE TABLE a(
    a1 nvarchar(50) NULL,
    a2 int NULL
    )
    
     
    --查询数据
    select * from a
    --添加数据
    insert into a values('1',2)
    --清除数据
    truncate table a
    
    --触发器
    alter  trigger tri_insert_a
    on a
    INSTEAD OF insert
    as
    begin 
      --在插入数据时,检查最新的100条数据里、有多少条重复记录(按a1,a2两个字段检查重复);如果重复记录超过1条,就不再插入数据。
        SELECT * FROM a
     
        INSERT INTO a(a1, a2)
        SELECT I.a1,I.a2
        FROM INSERTED I
        left JOIN
        (
            SELECT TOP(100) a1, a2 FROM a WITH(NOLOCK)
        ) T
        ON i.a1 = i.a1
            AND I.a2 = T.a2
        GROUP BY i.a1, i.a2      
        HAVING COUNT(t.a1) < 1 and count(t.a2)<1
    end
    

      

    好好学习,天天向上。
  • 相关阅读:
    第三周学习笔记
    质量属性
    第四周学习
    逻辑回归
    架构的概念
    第二周总结
    线性回归
    十步走-阅读笔记六
    十步走-阅读笔记五
    P2633 Count on a tree
  • 原文地址:https://www.cnblogs.com/Zhengxue/p/11806523.html
Copyright © 2011-2022 走看看