sql >> Databasteknik >  >> RDS >> MariaDB

SLIPP TABELL OM FINNS i MariaDB

I MariaDB kan vi använda IF EXISTS sats i DROP TABLE för att kontrollera om tabellen finns eller inte innan du släpper den.

Exempel

Här är ett exempel att visa:

DROP TABLE IF EXISTS t1;

Den satsen släpper en tabell som heter t1 om det finns.

När jag körde det uttalandet fanns tabellen redan, så den togs bort och jag fick följande meddelande:

Query OK, 0 rows affected (0.156 sec)

När jag körde uttalandet igen (efter att det redan hade tappats) fick jag följande meddelande:

Query OK, 0 rows affected, 1 warning (0.028 sec)

Så det var inget fel, men jag fick en varning.

Låt oss ta en titt på varningen:

SHOW WARNINGS;

Resultat:

+-------+------+------------------------+
| Level | Code | Message                |
+-------+------+------------------------+
| Note  | 1051 | Unknown table 'zap.t1' |
+-------+------+------------------------+

Så varningen talar om för oss att tabellen inte existerar, men det är åtminstone inte ett fel.

Det här är vad som händer när vi inte använder IF EXISTS :

DROP TABLE t1;

Resultat:

ERROR 1051 (42S02): Unknown table 'zap.t1'

Den här gången får vi ett felmeddelande.

Se även 4 sätt att kontrollera om en tabell finns i MariaDB om du bara vill kontrollera om en tabell finns utan att släppa den.


  1. Hitta ett värde var som helst i en databas

  2. Behöver jag skapa index på främmande nycklar på Oracle?

  3. 5 sätt att kontrollera om en tabell finns i MySQL

  4. MySQL misslyckas på:mysql ERROR 1524 (HY000):Plugin 'auth_socket' är inte laddad