最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

MySQL 5.0觸發(fā)器參考教程第3/4頁

 更新時間:2008年09月10日 09:20:36   作者:  
需要學(xué)習(xí)mysql觸發(fā)器的朋友需要了解的東西,整理的比較多,建議大家慢慢多練習(xí)

  REVOKE CREATE TRIGGER ON <表名稱> FROM <用戶或用戶列表>;

  Referring to OLD and NEW columns 關(guān)于舊的和新創(chuàng)建的列的標(biāo)識

  在觸發(fā)器的SQL語句中,你可以關(guān)聯(lián)表中的任意列。但你不能僅使用列的名稱去標(biāo)識,那會使系統(tǒng)混淆,因為那里可能會有列的新名(這可能正是你要修改的,你的動作可能正是要修改列名),還有列的舊名存在。因此你必須用這樣的語法來標(biāo)識:

  "NEW . column_name"或者"OLD . column_name".這樣在技術(shù)上處理(NEW | OLD . column_name)新和舊的列名屬于創(chuàng)建了過渡變量("transition variables")。

  對于INSERT語句,只有NEW是合法的;對于DELETE語句,只有OLD才合法;而UPDATE語句可以在和NEW以及OLD同時使用。下面是一個UPDATE中同時使用NEW和OLD的例子。


CREATE TRIGGER t21_au
BEFORE UPDATE ON t22
FOR EACH ROW
BEGIN
SET @old = OLD . s1;
SET @new = NEW.s1;
END;//
  現(xiàn)在如果t21表中的s1列的值是55,那么執(zhí)行了"UPDATE t21 SET s1 = s1 + 1"之后@old的值會變成55,而@new的值將會變成56。

  Example of CREATE and INSERT CREATE和INSERT的例子

  CREATE table with trigger創(chuàng)建有觸發(fā)器的表

  這里所有的例程中我都假定大家的分隔符已經(jīng)設(shè)置成//(DELIMITER //)。

CREATE TABLE t22 (s1 INTEGER)//
  CREATE TRIGGER t22_bi
BEFORE INSERT ON t22
FOR EACH ROW
BEGIN
SET @x = 'Trigger was activated!';
SET NEW.s1 = 55;
END;//
  在最開始我創(chuàng)建了一個名字為t22的表,然后在表t22上創(chuàng)建了一個觸發(fā)器t22_bi,當(dāng)我們要向表中的行插入時,觸發(fā)器就會被激活,執(zhí)行將s1列的值改為55的動作。

  INSERT on table w ith a trigger使用觸發(fā)器執(zhí)行插入動作

  mysql> INSERT INTO t22 VALUES (1)//

  讓我們看如果向表t2中插入一行數(shù)據(jù)觸發(fā)器對應(yīng)的表會怎么樣?

  這里的插入的動作是很常見的,我們不需要觸發(fā)器的權(quán)限來執(zhí)行它。甚至不需要知道是否有觸發(fā)器關(guān)聯(lián)。

mysql> SELECT @x, t22.* FROM t22//
+------------------------+------+
| @x | s1 |
+------------------------+------+
| Trigger was activated! | 55 |
+------------------------+------+
1 row in set (0.00 sec)
  大家可以看到INSERT動作之后的結(jié)果,和我們預(yù)期的一樣,x標(biāo)記被改動了,同時這里插入的數(shù)據(jù)不是我們開始輸入的插入數(shù)據(jù),而是觸發(fā)器自己的數(shù)據(jù)。


  Example of a "check" constraint

  "check"完整性約束例子

  What's a "check" constraint 什么是"check"約束

  在標(biāo)準(zhǔn)的SQL語言中,我們可以在(CREATE TABLE)創(chuàng)建表的過程中使用"CHECK (condition)",

相關(guān)文章

最新評論

新巴尔虎左旗| 宜君县| 忻州市| 衡东县| 浠水县| 遂昌县| 新兴县| 桂林市| 封丘县| 荣成市| 平潭县| 临江市| 屏东县| 中西区| 犍为县| 西华县| 乡宁县| 江川县| 博爱县| 玛多县| 南陵县| 兴化市| 万宁市| 石楼县| 老河口市| 蓝山县| 博客| 和平区| 华安县| 台南县| 砚山县| 怀宁县| 新津县| 高碑店市| 莎车县| 正镶白旗| 隆子县| 呼伦贝尔市| 安乡县| 黑水县| 大关县|