MySQL笔记之触发器的应用_MySQL
bitsCN.com
创建触发器
创建只有一个执行语句的触发器
CREATE TRIGGER 触发器名 BEFORE|AFTER 触发事件
ON 表名 FOR EACH ROW 执行语句
其中,触发器名参数指要创建的触发器的名字
BEFORE和AFTER参数指定了触发执行的时间,在事件之前或是之后
FOR EACH ROW表示任何一条记录上的操作满足触发事件都会触发该触发器
mysql> CREATE TRIGGER trig1 AFTER INSERT
-> ON work FOR EACH ROW
-> INSERT INTO time VALUES(NOW());
Query OK, 0 rows affected (0.09 sec)
上面创建了一个名为trig1的触发器,一旦在work中有插入动作,就会自动往time表里插入当前时间
创建有多个执行语句的触发器
CREATE TRIGGER 触发器名 BEFORE|AFTER 触发事件
ON 表名 FOR EACH ROW
BEGIN
执行语句列表
END
其中,BEGIN与END之间的执行语句列表参数表示需要执行的多个语句,不同语句用分号隔开
tips:一般情况下,mysql默认是以 ; 作为结束执行语句,与触发器中需要的分行起冲突
为解决此问题可用DELIMITER,如:DELIMITER ||,可以将结束符号变成||
当触发器创建完成后,可以用DELIMITER ;来将结束符号变成;
mysql> DELIMITER ||
mysql> CREATE TRIGGER trig2 BEFORE DELETE
-> ON work FOR EACH ROW
-> BEGIN
-> INSERT INTO time VALUES(NOW());
-> INSERT INTO time VALUES(NOW());
-> END
-> ||
Query OK, 0 rows affected (0.06 sec)
mysql> DELIMITER ;
上面的语句中,开头将结束符号定义为||,中间定义一个触发器,一旦有满足条件的删除操作
就会执行BEGIN和END中的语句,接着使用||结束
最后使用DELIMITER ; 将结束符号还原
查看触发器
SHOW TRIGGERS语句查看触发器信息
mysql> SHOW TRIGGERS/G;
*************************** 1. row ***************************
Trigger: trig1
Event: INSERT
Table: work
Statement: INSERT INTO time VALUES(NOW())
Timing: AFTER
Created: NULL
sql_mode:
Definer: root@localhost
character_set_client: utf8
collation_connection: utf8_general_ci
Database Collation: latin1_swedish_ci
结果会显示所有触发器的基本信息
tips:SHOW TRIGGERS语句无法查询指定的触发器
在triggers表中查看触发器信息
mysql> SELECT * FROM information_schema.triggers/G
*************************** 1. row ***************************
TRIGGER_CATALOG: def
TRIGGER_SCHEMA: person
TRIGGER_NAME: trig1
EVENT_MANIPULATION: INSERT
EVENT_OBJECT_CATALOG: def
EVENT_OBJECT_SCHEMA: person
EVENT_OBJECT_TABLE: work
ACTION_ORDER: 0
ACTION_CONDITION: NULL
ACTION_STATEMENT: INSERT INTO time VALUES(NOW())
结果显示了所有触发器的详细信息,同时,该方法可以查询制定触发器的详细信息
mysql> SELECT * FROM information_schema.triggers WHERE TRIGGER_NAME='trig1'/G
*************************** 1. row ***************************
TRIGGER_CATALOG: def
TRIGGER_SCHEMA: person
TRIGGER_NAME: trig1
EVENT_MANIPULATION: INSERT
EVENT_OBJECT_CATALOG: def
EVENT_OBJECT_SCHEMA: person
EVENT_OBJECT_TABLE: work
tips:所有触发器信息都存储在information_schema数据库下的triggers表中
可以使用SELECT语句查询,如果触发器信息过多,最好通过TRIGGER_NAME字段指定查询
删除触发器
mysql> DROP TRIGGER trig1;
Query OK, 0 rows affected (0.04 sec)
删除触发器之后最好使用上面的方法查看一遍
同时,也可以使用database.trig来指定某个数据库中的触发器
tips:如果不需要某个触发器时一定要将这个触发器删除,以免造成意外操作
bitsCN.com
Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



Cara Menyembunyikan Teks Sebelum Sebarang Klik dalam PowerPoint Jika anda mahu teks muncul apabila anda mengklik di mana-mana pada slaid PowerPoint, menyediakannya adalah pantas dan mudah. Untuk menyembunyikan teks sebelum mengklik mana-mana butang dalam PowerPoint: Buka dokumen PowerPoint anda dan klik menu Sisipkan. Klik pada Slaid Baru. Pilih Kosong atau salah satu daripada pratetap lain. Masih dalam menu Sisip, klik Kotak Teks. Seret kotak teks ke slaid. Klik kotak teks dan masukkan anda

Cara menulis pencetus dalam MySQL menggunakan PHP MySQL ialah sistem pengurusan pangkalan data hubungan yang biasa digunakan, dan PHP ialah bahasa skrip sebelah pelayan yang popular. Menggunakan PHP untuk menulis pencetus dalam MySQL boleh membantu kami merealisasikan operasi pangkalan data automatik. Artikel ini akan memperkenalkan cara menggunakan PHP untuk menulis pencetus MySQL dan memberikan contoh kod khusus. Sebelum memulakan, pastikan MySQL dan PHP telah dipasang dan jadual pangkalan data yang sepadan telah dibuat. 1. Cipta fail dan data PHP

Dalam pangkalan data Oracle, anda boleh menggunakan pernyataan CREATE TRIGGER untuk menambah pencetus. Pencetus ialah objek pangkalan data yang boleh menentukan satu atau lebih peristiwa pada jadual pangkalan data dan secara automatik melakukan tindakan yang sepadan apabila peristiwa itu berlaku.

Cara menulis pencetus tersuai dan prosedur tersimpan dalam MySQL menggunakan PHP Pengenalan: Semasa membangunkan aplikasi, kita selalunya perlu melakukan beberapa operasi pada peringkat pangkalan data, seperti memasukkan, mengemas kini atau memadam data. MySQL ialah sistem pengurusan pangkalan data hubungan yang digunakan secara meluas, dan PHP ialah bahasa skrip sebelah pelayan yang popular. Artikel ini akan memperkenalkan cara menulis pencetus tersuai dan prosedur tersimpan dalam MySQL menggunakan PHP, dan memberikan contoh kod khusus. 1. Apakah pencetus dan pencetus prosedur tersimpan (Trigg

Pencetus MySQL adalah peringkat baris. Menurut piawaian SQL, pencetus boleh dibahagikan kepada dua jenis: 1. Pencetus peringkat baris, yang akan diaktifkan sekali untuk setiap baris data yang diubah suai Jika pernyataan memasukkan 100 baris data, pencetus akan dipanggil 100 kali; . Pencetus peringkat penyata Pencetus diaktifkan sekali untuk setiap penyata Penyataan yang memasukkan 100 baris data hanya akan memanggil pencetus sekali. MySQL hanya menyokong pencetus peringkat baris, bukan pencetus peringkat pernyataan yang disediakan.

Cara menulis pencetus tersuai dalam MySQL menggunakan Pencetus Python ialah ciri berkuasa dalam MySQL yang boleh menentukan beberapa operasi yang dilaksanakan secara automatik pada jadual dalam pangkalan data. Python ialah bahasa pengaturcaraan ringkas dan berkuasa yang boleh berinteraksi dengan MySQL dengan mudah. Artikel ini akan memperkenalkan cara menulis pencetus tersuai menggunakan Python dan memberikan contoh kod khusus. Pertama, kita perlu memasang dan mengimport perpustakaan PyMySQL, yang merupakan cara Python bekerja dengan pangkalan data MySQL

Cara menggunakan pencetus MySQL untuk melaksanakan pengarkiban data automatik Pengenalan: Dalam bidang pengurusan data moden, pengarkiban automatik dan pembersihan data adalah keperluan penting dan biasa. Apabila jumlah data meningkat, mengekalkan data sejarah yang lengkap akan menduduki sumber storan yang berlebihan dan mengurangkan prestasi pertanyaan. Pencetus MySQL menyediakan cara yang berkesan untuk mencapai keperluan ini. Artikel ini akan memperkenalkan cara menggunakan pencetus MySQL untuk mencapai pengarkiban data automatik. 1. Apakah pencetus MySQL? Pencetus MySQL ialah sejenis memori yang istimewa.

Cara menulis prosedur tersimpan tersuai, pencetus dan fungsi dalam MySQL menggunakan C# MySQL ialah sistem pengurusan pangkalan data hubungan sumber terbuka yang digunakan secara meluas, dan C# ialah bahasa pengaturcaraan yang berkuasa untuk tugas pembangunan yang memerlukan interaksi dengan pangkalan data Katakanlah, MySQL dan C# adalah baik pilihan. Dalam MySQL, kita boleh menggunakan C# untuk menulis prosedur tersimpan tersuai, pencetus dan fungsi untuk mencapai operasi pangkalan data yang lebih fleksibel dan berkuasa. Artikel ini akan membimbing anda menggunakan C# untuk menulis dan melaksanakan
