欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

mysql觸發(fā)器之觸發(fā)器的增刪改查操作示例

 更新時間:2019年12月18日 08:40:31   作者:luyaran  
這篇文章主要介紹了mysql觸發(fā)器之觸發(fā)器的增刪改查操作,結(jié)合實例形式分析了mysql觸發(fā)器的定義及使用觸發(fā)器進行增刪改查等相關(guān)操作技巧,需要的朋友可以參考下

本文實例講述了mysql觸發(fā)器之觸發(fā)器的增刪改查操作。分享給大家供大家參考,具體如下:

我們在創(chuàng)建觸發(fā)器后,可以在包含觸發(fā)器定義文件的數(shù)據(jù)文件夾中顯示其定義。觸發(fā)器作為純文本文件存儲在以下數(shù)據(jù)庫文件夾中:

/data_folder/database_name/table_name.trg

我們還可通過查詢information_schema數(shù)據(jù)庫中的triggers表來顯示觸發(fā)器,如下所示:

SELECT 
  *
FROM
  information_schema.triggers
WHERE
  trigger_schema = 'database_name'
    AND trigger_name = 'trigger_name';

該語句允許您查看觸發(fā)器的內(nèi)容及其元數(shù)據(jù),例如:關(guān)聯(lián)表名和定義器,這是創(chuàng)建觸發(fā)器的mysql用戶的名稱。

如果要檢索指定數(shù)據(jù)庫中的所有觸發(fā)器,則需要使用以下SELECT語句從information_schema數(shù)據(jù)庫中的triggers表查詢數(shù)據(jù):

SELECT
  *
FROM
  information_schema.triggers
WHERE
  trigger_schema = 'database_name';

要查找與特定表相關(guān)聯(lián)的所有觸發(fā)器:

SELECT 
  *
FROM
  information_schema.triggers
WHERE
  trigger_schema = 'database_name'
    AND event_object_table = 'table_name';

我們來看下employees表相關(guān)聯(lián)的所有觸發(fā)器:

SELECT * FROM information_schema.triggers
WHERE trigger_schema = '你的數(shù)據(jù)庫名稱'
    AND event_object_table = 'employees';

其實在特定數(shù)據(jù)庫中顯示觸發(fā)器的另一種方法是使用SHOW TRIGGERS語句,語法如下所示:

SHOW TRIGGERS [FROM|IN] database_name
[LIKE expr | WHERE expr];

例如,如果要查看當(dāng)前數(shù)據(jù)庫中的所有觸發(fā)器,可以使用SHOW TRIGGERS語句,如下所示:

SHOW TRIGGERS;

要獲取特定數(shù)據(jù)庫中的所有觸發(fā)器,請在SHOW TRIGGERS語句中指定數(shù)據(jù)庫名稱,比如要查詢數(shù)據(jù)庫:luyaran下的所有觸發(fā)器,如下所示:

SHOW TRIGGERS FROM luyaran;

要獲取與特定表相關(guān)聯(lián)的所有觸發(fā)器,可以使用SHOW TRIGGERS語句中的WHERE子句。 以下語句返回與employees表相關(guān)聯(lián)的所有觸發(fā)器:

SHOW TRIGGERS FROM luyaran
WHERE `table` = 'employees';

這里要注意下,當(dāng)我們使用反引號包裝table列,因為table是MySQL中的保留關(guān)鍵字。然后,當(dāng)執(zhí)行SHOW TRIGGERS語句時,MySQL返回以下列:

  • Trigger:存儲觸發(fā)器的名稱,例如before_employee_update觸發(fā)器。
  • Event:指定事件,例如,調(diào)用觸發(fā)器的INSERT,UPDATE或DELETE。
  • Table:指定觸發(fā)器與例如相關(guān)聯(lián)的表,如employees表。
  • Statement:存儲調(diào)用觸發(fā)器時要執(zhí)行的語句或復(fù)合語句。
  • Timing:接受兩個值:BEFORE和AFTER,它指定觸發(fā)器的激活時間。
  • Created:在創(chuàng)建觸發(fā)器時記錄創(chuàng)建的時間。
  • sql_mode:指定觸發(fā)器執(zhí)行時的SQL模式。
  • Definer:記錄創(chuàng)建觸發(fā)器的帳戶。

在這里我們得注意下,要允許上述語句,我們至少得擁有SUPER權(quán)限。

完事我們來嘗試使用DROP TRIGGER語句來刪除現(xiàn)有的觸發(fā)器:

DROP TRIGGER table_name.trigger_name;

如果要刪除與employees表相關(guān)聯(lián)的before_employees_update觸發(fā)器,則可以執(zhí)行以下語句:

DROP TRIGGER employees.before_employees_update;

我們?nèi)绻薷挠|發(fā)器,必須首先刪除它并使用新的代碼重新創(chuàng)建。因為在MySQL中沒有類似:ALTER TRIGGER語句,因此,我們不能像修改其他數(shù)據(jù)庫對象,如表,視圖和存儲過程那樣修改觸發(fā)器。

好啦,本次記錄就到這里了。

更多關(guān)于MySQL相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《MySQL查詢技巧大全》、《MySQL事務(wù)操作技巧匯總》、《MySQL存儲過程技巧大全》、《MySQL數(shù)據(jù)庫鎖相關(guān)技巧匯總》及《MySQL常用函數(shù)大匯總

希望本文所述對大家MySQL數(shù)據(jù)庫計有所幫助。

相關(guān)文章

  • mysql排查鎖等待的解決方法

    mysql排查鎖等待的解決方法

    最近線上碰到了幾次mysql鎖等待的問題,本文主要介紹了mysql排查鎖等待的解決方法,具有一定的參考價值,感興趣的可以了解一下
    2024-08-08
  • Spring jdbc中數(shù)據(jù)庫操作對象化模型的實例詳解

    Spring jdbc中數(shù)據(jù)庫操作對象化模型的實例詳解

    這篇文章主要介紹了Spring jdbc中數(shù)據(jù)庫操作對象化模型的實例詳解的相關(guān)資料,希望通過本文大家能夠了解掌握這部分內(nèi)容,需要的朋友可以參考下
    2017-09-09
  • MySQL的雙寫緩沖區(qū)Doublewrite Buffer詳解

    MySQL的雙寫緩沖區(qū)Doublewrite Buffer詳解

    這篇文章主要介紹了MySQL的雙寫緩沖區(qū)Doublewrite Buffer詳解,InnoDB是MySQL中一種常用的事務(wù)性存儲引擎,它具有很多優(yōu)秀的特性,其中,Doublewrite Buffer是InnoDB的一個重要特性之一,本文將介紹Doublewrite Buffer的原理和應(yīng)用,需要的朋友可以參考下
    2023-07-07
  • Mysql查詢語句優(yōu)化技巧

    Mysql查詢語句優(yōu)化技巧

    這篇文章主要介紹了Mysql查詢語句優(yōu)化技巧的相關(guān)資料,需要的朋友可以參考下
    2016-04-04
  • 詳解MySQL8.0+常用命令

    詳解MySQL8.0+常用命令

    這篇文章主要介紹了MySQL8.0+常用命令及操作命令,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-10-10
  • MySQL中MVCC機制的實現(xiàn)原理

    MySQL中MVCC機制的實現(xiàn)原理

    這篇文章主要介紹了MySQL中MVCC機制的實現(xiàn)原理,MVCC多版本并發(fā)控制,MySQL中一種并發(fā)控制的方法,他主要是為了提高數(shù)據(jù)庫的讀寫性能,用更好的方式去處理讀寫沖突
    2022-08-08
  • 詳解MySQL8.0原子DDL語法

    詳解MySQL8.0原子DDL語法

    這篇文章主要介紹了詳解MySQL8.0原子DDL語法的相關(guān)資料,幫助大家更好的理解和學(xué)習(xí)使用MySQL,感興趣的朋友可以了解下
    2021-03-03
  • MySQL查看與修改當(dāng)前數(shù)據(jù)庫編碼的方法

    MySQL查看與修改當(dāng)前數(shù)據(jù)庫編碼的方法

    這篇文章主要介紹了MySQL查看與修改當(dāng)前數(shù)據(jù)庫編碼的方法,需要的朋友可以參考下
    2016-04-04
  • MySQL事務(wù)的SavePoint簡介及操作

    MySQL事務(wù)的SavePoint簡介及操作

    SavePoint是數(shù)據(jù)庫事務(wù)中的一個概念, 可以將整個事務(wù)切割為不同的小事務(wù), 可以選擇將狀態(tài)回滾到某個小事務(wù)發(fā)生時的樣子,本文給大家分享MySQL事務(wù)的SavePoint重要操作,本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友參考下吧
    2023-01-01
  • mysql索引最左原則實例代碼

    mysql索引最左原則實例代碼

    這篇文章主要給大家介紹了關(guān)于mysql索引最左原則的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家學(xué)習(xí)或者使用mysql具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-07-07

最新評論