zoukankan      html  css  js  c++  java
  • mysql触发器new和old

    下面为您介绍mysql触发器new old的相关知识,供您参考学习,如果您在mysql触发器方面遇到过类似的问题,不妨一看,相信对您会有所帮助。

    mysql触发器new old:

    "NEW . column_name"或者"OLD . column_name".这样在技术上处理(NEW | OLD . column_name)新和旧

    的列名属于创建了过渡变量("transition variables")。

    对于INSERT语句,只有NEW是合法的;对于DELETE语句,只有OLD才合法;而UPDATE语句可以在和NEW以及

    OLD同时使用。下面是一个UPDATE中同时使用NEW和OLD的例子。


    CREATE TRIGGER tr1  
    BEFORE UPDATE ON t22   
    FOR EACH ROW   
    BEGIN   
    SET @old = OLD.s1;   
    SET @new = NEW.s1;   
    END; 

    现在如果t21表中的s1列的值是55,那么执行了"UPDATE t21 SET s1 = s1 + 1"之后@old的值会变成55,

    而@new的值将会变成56。

    触发器的执行间隔:FOR EACH ROW子句通知触发器每隔一行执行一次动作,而不是对整个表执行一次。

    列值递增:


    create table a(  
    id int primary key auto_increment,##设置为自动递增  
    name varchar(10)  
    ); 

    设置初始值为1000 :
    ALTER   TABLE   tablename   AUTO_INCREMENT=1000;

  • 相关阅读:
    HDOJ 2076 夹角有多大(题目已修改,注意读题)
    HDOJ 2058 The sum problem
    HDOJ 2099 整除的尾数
    HDOJ 2075 A|B?
    HDOJ 2071 Max Num
    HDOJ 2056 Rectangles
    HDOJ 2055 An easy problem
    HDOJ 2053 Switch Game
    HDOJ 2052 Picture
    P4139 上帝与集合的正确用法
  • 原文地址:https://www.cnblogs.com/jimmyshan-study/p/10775760.html
Copyright © 2011-2022 走看看