GNU/Linux >> Belajar Linux >  >> Ubuntu

Cara Menggunakan MySQL SHOW TRIGGERS

Pendahuluan

MySQL SHOW TRIGGERS pernyataan menampilkan semua pemicu yang ditentukan dalam tabel database. Perintah tersebut membantu memberikan detail untuk pemicu yang ada, termasuk nama, waktu peristiwa, dan detail lainnya.

Meskipun pernyataannya sederhana dan berfungsi tanpa opsi apa pun, penambahan opsi memperhalus dan memfilter kolom data lebih lanjut. Hasilnya, perintah membantu mengambil informasi yang diinginkan dengan cepat, memberikan gambaran umum yang lebih baik tentang pernyataan pemicu dalam database.

Tutorial ini menjelaskan SHOW TRIGGERS pernyataan di MySQL secara rinci menggunakan contoh.

Prasyarat

  • Akses ke server MySQL melalui terminal atau MySQL Workbench.
  • Hak istimewa Sudo.
  • Akses root ke MySQL atau akun dengan hak pengguna TRIGGER.
  • Tabel database dengan pemicu.

Sintaks

Sintaks untuk SHOW TRIGGERS pernyataannya adalah:

SHOW TRIGGERS 
[{FROM | IN} <database name>] 
[ WHERE <expression> LIKE '<pattern>']

Untuk memahami cara kerja pernyataan, inilah yang dilakukan setiap bagian:

  • SHOW TRIGGERS bekerja tanpa opsi tambahan untuk database default saat ini.
  • FROM <database name> atau IN <database name> menyediakan nama database untuk dicari. Tambahkan FROM atau IN klausa dan nyatakan nama database untuk menampilkan pemicu dari database tertentu.
  • WHERE <expression> memilih baris dari hasil berdasarkan ekspresi yang disediakan.
  • LIKE '<pattern>' memfilter WHERE ekspresi dan hanya menampilkan nilai yang cocok dengan pola.

MySQL SHOW TRIGGERS:Bagaimana Pernyataan Bekerja?

SHOW TRIGGERS pernyataan menunjukkan semua pemicu yang ditentukan dalam database yang berfungsi. Menambahkan opsi tertentu memungkinkan menampilkan informasi pemicu dari database tanpa memilih database. Selain itu, opsi lebih lanjut memungkinkan pemfilteran output untuk penelusuran yang disempurnakan.

Sebelum memulai, buka terminal (CTRL +ALT +B ) dan sambungkan ke server basis data:

sudo mysql -u <username> -p

Prompt berubah menjadi mysql> , menunjukkan koneksi yang berhasil ke monitor MySQL.

Daftar Pemicu

Ada dua cara untuk membuat daftar pemicu menggunakan SHOW TRIGGERS pernyataan:

1. Untuk membuat daftar pemicu tanpa menghubungkan ke database, tambahkan FROM atau IN klausa dan memberikan nama database.

Misalnya:

SHOW TRIGGERS IN <database name>\G
SHOW TRIGGERS FROM <database name>\G

2. Atau, sambungkan ke database terlebih dahulu:

USE <database name>;

Kemudian, jalankan perintah tanpa parameter apa pun:

SHOW TRIGGERS\G

Dalam kedua kasus, output menunjukkan tabel yang berisi semua pemicu yang ditentukan.

TAMPILKAN Kolom PEMICU di Kumpulan Hasil

Output yang dihasilkan dari SHOW TRIGGERS pernyataan menampilkan setiap baris dengan detail tentang pemicu tertentu.

Setiap kolom berisi atribut berikut:

  • Pemicu adalah nama pemicunya.
  • Acara menunjukkan tindakan saat pemicu diaktifkan.
  • Tabel adalah nama tabel tempat pemicu berada.
  • Pernyataan menunjukkan apa yang dilakukan pemicu. Secara khusus, pernyataan SQL lengkap yang dijalankan saat pemicu mengaktifkan cetakan di bidang ini.
  • Waktu menunjukkan kapan pemicu dijalankan relatif terhadap suatu peristiwa.
  • Dibuat mencetak tanggal dan waktu saat pengguna membuat pemicu.
  • sql_mode mencantumkan mode server SQL yang berlaku saat pemicu dijalankan.
  • Penentu menentukan pengguna yang membuat pemicu dan koneksi sebagai [email protected] .
  • character_set_client menunjukkan set karakter untuk pernyataan yang berasal dari klien.
  • koneksi_koneksi mendefinisikan aturan kumpulan karakter untuk membandingkan dan menyortir string saat penentu membuat pemicu.
  • Pengumpulan Basis Data menunjukkan set karakter untuk database saat menyortir dan membandingkan string yang terkait dengan pemicu.

MySQL SHOW TRIGGERS:Contoh

Gunakan WHERE atau LIKE pernyataan untuk memilih kolom dari SHOW TRIGGER keluaran dan gunakan AND , OR dan NOT operator untuk menyaring pencarian lebih lanjut. Contoh di bawah menunjukkan kasus penggunaan yang umum.

Tampilkan Pemicu menurut Tabel

Untuk membuat daftar pemicu berdasarkan nama tabel, gunakan salah satu dari dua metode:

1. Tampilkan pemicu dari tabel tanpa menghubungkan ke database dengan:

SHOW TRIGGERS 
FROM <database name> 
WHERE `Table`='<table name>'\G

Misalnya, jika nama database adalah people dan nama tabelnya adalah person , gunakan:

SHOW TRIGGERS 
FROM people 
WHERE `Table`='person'\G

2. Atau, sambungkan ke database terlebih dahulu:

USE <database name>;

Kemudian, gunakan SHOW TRIGGERS hanya dengan WHERE klausa:

SHOW TRIGGERS 
WHERE `Table`='<table name>'\G

Misalnya, untuk database people dengan tabel person , jalankan:

USE people;
SHOW TRIGGERS 
WHERE `Table`='person'\G

Dalam kedua kasus, output mencantumkan semua pemicu untuk tabel tertentu berdasarkan baris.

Tampilkan Pemicu menurut Peristiwa

Setiap pemicu diaktifkan pada pernyataan peristiwa MySQL tertentu. Untuk membuat daftar pemicu berdasarkan peristiwa, gunakan sintaks berikut:

SHOW TRIGGERS
FROM <database name>
WHERE `Event`='<event>'\G

Atau, sambungkan ke database terlebih dahulu:

USE <database name>;
SHOW TRIGGERS 
WHERE `Event`='<event>'\G

Opsi yang memungkinkan untuk <event> adalah:

  • INSERT - Mengaktifkan pemicu saat pengguna memasukkan data ke dalam tabel.
  • UPDATE - Menjalankan pemicu saat pengguna memperbarui data tabel.
  • DELETE - Menjalankan pemicu saat pengguna menghapus data dari tabel.

Misalnya:

SHOW TRIGGERS 
FROM people 
WHERE `Event`='DELETE'\G

Keluaran hanya menampilkan pemicu yang kejadiannya DELETE .

Tampilkan Pemicu berdasarkan Waktu

Waktu tautan parameter ke Peristiwa , menunjukkan apakah pemicu mengaktifkan BEFORE atau AFTER pernyataan peristiwa. Untuk menampilkan pemicu berdasarkan waktu tanpa menghubungkan ke database, gunakan sintaks berikut:

SHOW TRIGGERS
FROM <database name>
WHERE `Timing`='<timing>'\G

Untuk menghubungkan ke database terlebih dahulu dan kemudian membuat daftar pemicu berdasarkan waktu, gunakan:

USE <database name>;
SHOW TRIGGERS
WHERE `Timing`='<timing>'\G

Dengan parameter contoh, pernyataan terlihat seperti berikut:

SHOW TRIGGERS 
FROM people 
WHERE Timing='AFTER'\G

SHOW TRIGGERS keluaran pernyataan menampilkan pemicu dengan Waktu setel ke AFTER .

Tampilkan Pemicu menurut Pernyataan

Pernyataan kolom berisi pernyataan SQL bahwa pemicu berjalan saat dipanggil.

Gabungkan perintah dengan LIKE klausa untuk mencari melalui pernyataan pemicu:

SHOW TRIGGERS
FROM <database name>
WHERE `Statement` LIKE '<pattern>'\G

Atau, pilih database terlebih dahulu dan hapus FROM bagian dari pernyataan:

USE <database name>;
SHOW TRIGGERS 
WHERE `Statement` LIKE '<pattern>'\G

LIKE pernyataan melakukan pencarian pencocokan pola menggunakan karakter wildcard (%):

  • Gunakan % di akhir untuk mencocokkan pernyataan yang dimulai dengan kata tertentu. Misalnya, 'IF%' cocok dengan semua kemunculan yang dimulai dengan IF pernyataan.
  • Tambahkan % di awal untuk mencocokkan pernyataan yang diakhiri dengan kata tertentu. Misalnya, '%IF' cocok dengan semua pernyataan yang diakhiri dengan IF pernyataan.
  • Tulis % di kedua sisi pernyataan untuk mencari kata yang terletak di mana saja dalam pernyataan.

Contoh penelusuran untuk Pernyataan trigger pemicu dalam tabel yang berisi AVG Fungsi MySQL adalah:

SHOW TRIGGERS 
FROM people 
WHERE `Statement` LIKE '%AVG%'\G

Kueri mengambil semua pernyataan yang berisi AVG fungsi.

Menggabungkan Parameter Penelusuran

Gabungkan parameter penelusuran dengan AND operator untuk membuat kueri yang kompleks. Misalnya, untuk mencari pemicu yang berisi AVG MySQL berfungsi dan memiliki DELETE acara, jalankan:

SHOW TRIGGERS
FROM people
WHERE `Statement` LIKE '%AVG%' AND `Event`='DELETE'\G

Hasilnya menunjukkan pemicu di mana kedua pernyataan dievaluasi menjadi Benar . Untuk pembuatan kueri tambahan, gunakan NOT dan OR operator.

Tampilkan Pemicu di MySQL Workbench

Semua SHOW TRIGGERS pernyataan dari contoh sebelumnya bekerja di MySQL Workbench. Satu-satunya perbedaan adalah perintah diakhiri dengan titik koma (; ) bukannya \G di MySQL Workbench.

Untuk menampilkan pemicu di MySQL Workbench, lakukan hal berikut:

1. Jalankan MySQL Workbench dari terminal (CTRL +ALT +B ) dengan perintah berikut:

mysql-workbench

Atau, cari MySQL Workbench di daftar aplikasi melalui GUI.

2. Pilih koneksi yang diinginkan untuk terhubung ke server database.

3. Masukkan kata sandi pengguna jika diminta.

4. Tambahkan SHOW TRIGGERS pernyataan ke dalam kotak kueri:

SHOW TRIGGERS;

5. Terakhir, jalankan kueri.

Hasilnya muncul sebagai tabel yang berisi semua pemicu.


Ubuntu
  1. Cara menggunakan phpMyAdmin untuk menyalin database MySQL

  2. Cara menyalin database MySQL

  3. Cara Membuat Database MySQL Di cPanel

  1. Bagaimana Mengubah Susunan Database MySQL?

  2. Bagaimana menghubungkan jarak jauh ke MySQL

  3. Cara menggunakan cPanel MySQL Database Wizard

  1. Cara Membuat Database MySQL di Workbench

  2. Bagaimana Cara Menggunakan Perintah DD Show Progress di Linux?

  3. Cara Memperbaiki Database MySQL