国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數(shù)據(jù)庫 > MySQL > 正文

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

2024-07-24 13:04:26
字體:
供稿:網(wǎng)友
Conventions and Styles約定和編程風(fēng)格
  每次我想要演示實(shí)際代碼時,我會對mysql客戶端的屏幕就出現(xiàn)的代碼進(jìn)行調(diào)整,將字體改成Courier,使他們看起來與普通文本不一樣(讓大家區(qū)別程序代碼和正文)。在這里舉個例子:

mysql> DROP FUNCTION f;
Query OK, 0 rows affected (0.00 sec)
  如果實(shí)例比較大,則需要在某些行和段落間加注釋,同時我會用將"<--"符號放在頁面的右邊以表示強(qiáng)調(diào)。例如:

mysql> CREATE PROCEDURE p ()
-> BEGIN
-> /* This procedure does nothing */ <--
-> END;//
Query OK, 0 rows affected (0.00 sec)
  有時候我會將例子中的"mysql>"和"->"這些系統(tǒng)顯示去掉,你可以直接將代碼復(fù)制到mysql客戶端程序中(如果你現(xiàn)在所讀的不是電子版的,可以在mysql.com網(wǎng)站下載相關(guān)腳本)

  所以的例子都已經(jīng)在Suse 9.2 Linux、Mysql 5.0.3公共版上測試通過。在您閱讀本書的時候,Mysql已經(jīng)有更高的版本,同時能支持更多OS了,包括Windows,Sparc,HP-UX。因此這里的例子將能正常的運(yùn)行在您的電腦上。但如果運(yùn)行仍然出現(xiàn)故障,可以咨詢你認(rèn)識的資深Mysql用戶,這樣就能得到比較好的支持和幫助。

  Why Triggers 為什么要用觸發(fā)器

  我們在MySQL 5.0中包含對觸發(fā)器的支持是由于以下原因:

  MySQL早期版本的用戶長期有需要觸發(fā)器的要求。

  我們曾經(jīng)許諾支持所有ANSI標(biāo)準(zhǔn)的特性。

  您可以使用它來檢查或預(yù)防壞的數(shù)據(jù)進(jìn)入數(shù)據(jù)庫。

  您可以改變或者取消INSERT, UPDATE以及DELETE語句。

  您可以在一個會話中監(jiān)視數(shù)據(jù)改變的動作。


  在這里我假定大家都讀過"MySQL新特性"叢書的第一集--"MySQL存儲過程",那么大家都應(yīng)該知道MySQL至此存儲過程和函數(shù),那是很重要的知識,因?yàn)樵谟|發(fā)器中你可以使用在函數(shù)中使用的語句。特別舉個例子:

  復(fù)合語句(BEGIN / END)是合法的.

  流控制(Flow-of-control)語句(IF, CASE, WHILE, LOOP, WHILE, REPEAT, LEAVE,ITERATE)也是合法的.

  變量聲明(DECLARE)以及指派(SET)是合法的.

  允許條件聲明.

  異常處理聲明也是允許的.

  但是在這里要記住函數(shù)有受限條件:不能在函數(shù)中訪問表.因此在函數(shù)中使用以下語句是非法的。

ALTER 'CACHE INDEX' CALL COMMIT CREATE DELETE
  DROP 'FLUSH PRIVILEGES' GRANT INSERT KILL
  LOCK OPTIMIZE REPAIR REPLACE REVOKE
  ROLLBACK SAVEPOINT 'SELECT FROM table'
  'SET system variable' 'SET TRANSACTION'
  SHOW 'START TRANSACTION' TRUNCATE UPDATE
  在觸發(fā)器中也有完全一樣的限制.

  觸發(fā)器相對而言比較新,因此會有(bugs)缺陷.所以我在這里給大家警告,就像我在存儲過程書中所說那樣.不要在含有重要數(shù)據(jù)的數(shù)據(jù)庫中使用這個觸發(fā)器,如果需要的話在一些以測試為目的的數(shù)據(jù)庫上使用,同時在你對表創(chuàng)建觸發(fā)器時確認(rèn)這些數(shù)據(jù)庫是默認(rèn)的。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 临高县| 渝北区| 南开区| 芜湖市| 寿宁县| 马鞍山市| 岑溪市| 凤山县| 黎平县| 汝城县| 延长县| 浦县| 屏东市| 镇康县| 洪江市| 威远县| 苏尼特左旗| 辽中县| 修水县| 隆林| 容城县| 曲松县| 平陆县| 蒙城县| 桃园市| 锡林郭勒盟| 得荣县| 马山县| 宁陕县| 溧阳市| 昌黎县| 内黄县| 重庆市| 封开县| 孟津县| 万年县| 绥滨县| 若羌县| 沙雅县| 军事| 高青县|