GNU/Linux >> Znalost Linux >  >> Ubuntu

Jak používat MySQL SHOW TRIGGERS

Úvod

MySQL SHOW TRIGGERS zobrazí všechny definované spouštěče v databázových tabulkách. Příkaz pomáhá poskytnout podrobnosti pro existující spouštěče, včetně názvu, časování události a dalších podrobností.

Přestože je příkaz jednoduchý a funguje bez jakýchkoli voleb, přidání voleb dále zpřesňuje a filtruje datové sloupce. Výsledkem je, že příkaz pomáhá rychle získat požadované informace a poskytuje lepší přehled spouštěcích příkazů v databázi.

Tento výukový program vysvětluje SHOW TRIGGERS výpis v MySQL podrobně pomocí příkladů.

Předpoklady

  • Přístup k serveru MySQL přes terminál nebo MySQL Workbench.
  • Oprávnění sudo.
  • Přístup uživatele root k MySQL nebo účtu s uživatelským oprávněním TRIGGER.
  • Databázová tabulka se spouštěči.

Syntaxe

Syntaxe pro SHOW TRIGGERS prohlášení je:

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

Abyste pochopili, jak příkaz funguje, zde je to, co jednotlivé části dělají:

  • SHOW TRIGGERS funguje bez dalších možností pro aktuální výchozí databázi.
  • FROM <database name> nebo IN <database name> poskytuje název databáze k vyhledání. Přidejte FROM nebo IN klauzule a uveďte název databáze pro zobrazení spouštěčů z konkrétní databáze.
  • WHERE <expression> vybere řádky z výsledku na základě poskytnutého výrazu.
  • LIKE '<pattern>' filtruje WHERE výraz a zobrazí pouze hodnoty, které odpovídají vzoru.

MySQL SHOW TRIGGERS:Jak příkaz funguje?

SHOW TRIGGERS zobrazuje všechny spouštěče definované v pracovní databázi. Přidání konkrétních možností umožňuje zobrazit informace o aktivaci z databáze bez výběru databáze. Kromě toho další možnosti umožňují filtrování výstupu pro upřesněné vyhledávání.

Před spuštěním otevřete terminál (CTRL +ALT +T ) a připojte se k databázovému serveru:

sudo mysql -u <username> -p

Výzva se změní na mysql> , což znamená úspěšné připojení k monitoru MySQL.

Seznam spouštěčů

Existují dva způsoby, jak vypsat spouštěče pomocí SHOW TRIGGERS prohlášení:

1. Chcete-li vypsat spouštěče bez připojení k databázi, přidejte FROM nebo IN klauzule a zadejte název databáze.

Například:

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

2. Případně se nejprve připojte k databázi:

USE <database name>;

Poté spusťte příkaz bez parametrů:

SHOW TRIGGERS\G

V obou případech výstup zobrazuje tabulku, která obsahuje všechny definované spouštěče.

ZOBRAZIT SLOUPCE SPUŠTĚNÍ v sadě výsledků

Výsledný výstup z SHOW TRIGGERS zobrazí každý řádek s podrobnostmi o konkrétním spouštěči.

Každý sloupec obsahuje následující atributy:

  • Spouštěč je název spouštěče.
  • Událost ukazuje akci, když se aktivuje spoušť.
  • Tabulka je název tabulky, kde se nachází spouštěč.
  • Prohlášení ukazuje, co spoušť dělá. Konkrétně se v tomto poli vytiskne úplný příkaz SQL, který se provede, když spouštěč aktivuje.
  • Načasování ukazuje, kdy se spouštěč provede vzhledem k události.
  • Vytvořeno vytiskne datum a čas, kdy uživatel aktivoval.
  • sql_mode uvádí režimy serveru SQL platné při spuštění spouštěče.
  • Definátor určuje uživatele, který vytvořil spouštěč a připojení jako [email protected] .
  • character_set_client zobrazuje znakovou sadu pro příkazy pocházející od klienta.
  • collation_connection definuje pravidla znakové sady pro porovnávání a řazení řetězců, když definující vytvořil spouštěč.
  • Řazení databází zobrazuje znakovou sadu pro databázi při řazení a porovnávání řetězců spojených se spouštěčem.

MySQL SHOW TRIGGERS:Příklady

Použijte WHERE nebo LIKE vyberte sloupce z SHOW TRIGGER výstup a použijte AND , OR a NOT operátory pro další filtrování vyhledávání. Níže uvedené příklady ukazují typické případy použití.

Zobrazit spouštěče podle tabulky

Chcete-li uvést spouštěče podle názvu tabulky, použijte jednu ze dvou metod:

1. Zobrazte spouštěče z tabulky bez připojení k databázi pomocí:

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

Pokud je například název databáze people a název tabulky je person , použijte:

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

2. Případně se nejprve připojte k databázi:

USE <database name>;

Poté použijte SHOW TRIGGERS pouze pomocí WHERE klauzule:

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

Například pro databázi people s tabulkou person , spustit:

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

V obou případech výstup uvádí všechny spouštěče pro konkrétní tabulku po řádcích.

Zobrazit spouštěče podle události

Každý trigger se aktivuje na určitém příkazu události MySQL. Chcete-li zobrazit spouštěče podle události, použijte následující syntaxi:

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

Případně se nejprve připojte k databázi:

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

Možné možnosti pro <event> jsou:

  • INSERT - Aktivuje spouštěč, když uživatel vloží data do tabulky.
  • UPDATE – Spustí spouštěč, když uživatel aktualizuje data tabulky.
  • DELETE – Spustí spouštěč, když uživatel odstraní data z tabulky.

Například:

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

Výstup zobrazuje pouze ty spouštěče, kde je událost DELETE .

Zobrazit spouštěče podle časování

Načasování parametr odkazuje na Událost , která označuje, zda se spouštěč aktivuje BEFORE nebo AFTER prohlášení o události. Chcete-li zobrazit spouštěče založené na časování bez připojení k databázi, použijte následující syntaxi:

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

Chcete-li se nejprve připojit k databázi a poté vypsat spouštěče podle načasování, použijte:

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

S ukázkovými parametry vypadá příkaz takto:

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

SHOW TRIGGERS výstup příkazu zobrazuje spouštěče s Časováním nastavte na AFTER .

Zobrazit spouštěče podle příkazu

Prohlášení obsahuje příkaz SQL, který spouštěč při vyvolání spustí.

Zkombinujte příkaz s LIKE klauzule k prohledávání spouštěcích příkazů:

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

Případně nejprve vyberte databázi a odeberte FROM část prohlášení:

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

LIKE příkaz provádí vyhledávání podle vzoru pomocí zástupného znaku (%):

  • Použijte % na konci, aby odpovídaly výrokům, které začínají konkrétním slovem. Například 'IF%' odpovídá všem výskytům, které začínají IF prohlášení.
  • Přidat % na začátku, aby odpovídaly výrokům, které končí zadaným slovem. Například '%IF' odpovídá všem příkazům končícím na IF prohlášení.
  • Napište % na obou stranách příkazu k vyhledání slova umístěného kdekoli v příkazu.

Příklad hledání spouštěče Prohlášení v tabulce, která obsahuje AVG Funkce MySQL je:

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

Dotaz načte všechny příkazy, které obsahují AVG funkce.

Kombinace parametrů vyhledávání

Zkombinujte parametry vyhledávání s AND operátora pro vytváření složitých dotazů. Chcete-li například vyhledat spouštěče, které obsahují AVG MySQL a mají funkci DELETE událost, spustit:

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

Výsledek ukazuje spouštěče, kde se oba příkazy vyhodnotí jako True . Pro další vytváření dotazů použijte NOT a OR operátory.

Zobrazit spouštěče v MySQL Workbench

Všechny SHOW TRIGGERS příkazy z předchozích příkladů fungují v MySQL Workbench. Jediný rozdíl je v tom, že příkazy končí středníkem (; ) namísto \G v MySQL Workbench.

Chcete-li zobrazit spouštěče v MySQL Workbench, proveďte následující:

1. Spusťte MySQL Workbench z terminálu (CTRL +ALT +T ) pomocí následujícího příkazu:

mysql-workbench

Případně vyhledejte MySQL Workbench v seznamu aplikací pomocí GUI.

2. Vyberte požadované připojení pro připojení k databázovému serveru.

3. Pokud budete vyzváni, zadejte uživatelské heslo.

4. Přidejte SHOW TRIGGERS do pole dotazu:

SHOW TRIGGERS;

5. Nakonec spusťte dotaz.

Výsledek se zobrazí jako tabulka obsahující všechny spouštěče.


Ubuntu
  1. Jak změnit řazení databáze MySQL?

  2. Jak vytvořit databázi MySQL v cPanel

  3. Jak používat Průvodce databází cPanel MySQL

  1. Jak používat phpMyAdmin ke kopírování databáze MySQL

  2. Jak zkopírovat databázi MySQL

  3. Jak se vzdáleně připojit k MySQL

  1. Jak vytvořit databázi MySQL v Workbench

  2. Jak používat příkaz DD Show Progress v Linuxu?

  3. Jak opravit databázi MySQL