zoukankan      html  css  js  c++  java
  • sql: TRIGGER

    --Common Table Expressions(CTE)
    WITH HighSample (SampleId,SampleTitle,SampleContent) AS
    (
        SELECT SampleId,SampleTitle,SampleContent From CompetitionSample
        WHERE SampleId>1
    )
    SELECT * From HighSample
    
    --游标
    DECLARE curSample INSENSITIVE CURSOR
    FOR SELECT TOP 10 SampleId,SampleTitle,SampleContent FROM CompetitionSample
    DECLARE @SampleId int
    DECLARE @SampleTitle nvarchar(540)
    Declare @SampleContent nvarchar(1000)
    Open curSample
    FETCH NEXT FROM curSample INTO @SampleId,@SampleTitle,@SampleContent
    WHILE @@Fetch_Status=0
      BEGIN
        PRINT @SampleTitle+','+@SampleContent
        Fetch NEXT FROM curSample Into @SampleId,@SampleTitle,@SampleContent
      END
    CLOSE curSample
    DEALLOCATE curSample
    
    --N到M条记录(要有主索引ID)
    --Select Top M-N * From 表 Where ID in (Select Top M ID From 表) Order by ID   Desc
    select * from ShoppingCouponsList
    Select Top (15-10) * From ShoppingCouponsList Where ShoppingCouponsID in (Select Top 15 ShoppingCouponsID From ShoppingCouponsList) Order by ShoppingCouponsID   Desc
    
    
    --触发器(添加,修改)
    --text,ntext 无法创建约束,可以用此方法
    drop TRIGGER Sample_insert
    
    CREATE TRIGGER DuSample_insert
    ON CompetitionSample
    FOR INSERT,UPDATE AS --常见的触发器有三种:分别应用于Insert , Update , Delete 事件
    declare @s nvarchar(500)
    set @s='err,geovindu'
    IF EXISTS (SELECT * FROM  CompetitionSample  where charindex('</title>',SampleContent)=1)
    begin
    ROLLBACK TRANSACTION
    RAISERROR('有非法字符',16,1,@s)
    end
    
    
    --修改不了
    update CompetitionSample set SampleContent='</title>' where SampleId='1'
    --添加不了
    insert into CompetitionSample(SampleTitle,SampleBrandId,SamplePlatformId,SampleSmallPic,SampleContent,SampleAuthor,SampleIs)
     values('d2',1,1,'gif','</title>2','g2',0)
    
    
    select * from CompetitionSample where charindex('</title>',SampleContent)=1
    
  • 相关阅读:
    Web网站架构演变—高并发、大数据
    企业级Nginx Web服务优化实战
    初始化mysql数据库时提示字符编码错误的解决办法
    linux下logrotate 配置和理解
    Centos 5.2下安装多个mysql数据库
    编译安装 mysql 5.5,运行 cmake报错Curses library not found
    Centos 5.5 编译安装mysql 5.5.9
    理解索引的基数
    centos下yum安装mysql5.6后,无法启动 MySQL Daemon failed to start
    如何从MySQL官方Yum仓库安装MySQL5.6
  • 原文地址:https://www.cnblogs.com/geovindu/p/4238477.html
Copyright © 2011-2022 走看看