Adatbázis törlése SQL-ben: DROP DATABASE utasítás példákkal
Az előző leckében bemutattuk, hogy hogyan lehet létrehozni egy új adatbázist, ebben a leckében a másik végletről lesz szó. Vannak olyan esetek, amikor egy adatbázisra többé már nincs szükségünk, ilyenkor lehetőségünk van törölni azt, az SQL DROP DATABASE utasításával.
Adatbázis törlése
Ahogy fentebb is írtuk a DROP DATABASE utasítással törölhetjük, vagy ahogy az angol kulcsszó is mutatja, dobhatjuk el a már használni nem kívánt adatbázisokat. Az adatbázis eldobásával az adatbázisban tárolt táblák, adatok, rekordok is eldobásra, törlésre kerülnek.
SQL DROP DATABASE szintaxis
DROP DATABASE adatbázis;
Code language: SQL (Structured Query Language) (sql)
Az adatbázis törléséhez megfelelő jogosultságokkal kell rendelkezni, szóval az adatbázis létrehozása hibába ütközhet, ha egy olyan felhasználóval próbálkozunk, amelynek nincsenek megfelelő jogosultságai az adatbázis törléséhez.
Továbbá fontos, hogy olyan adatbázis nevet adjunk meg, amely már létezik, hiszen ellenkező esetben SQL hibába fogunk ütközni. Ezt a hibalehetőséget úgy is kiküszöbölhetjük, ha megadunk egy módosítót a DROP DATABASE-hez.
DROP DATABASE IF EXISTS adatbázis;
Code language: SQL (Structured Query Language) (sql)
Ha az IF EXITSTS módosítót a DROP DATABASE utasítás után pakoljuk, akkor abban az esetben, ha létezik az adatbázis, akkor szimplán törli azt, azonban, ha a törlendő adatbázis nem létezik, akkor nem hibára futunk, hanem csak visszajelez, hogy olyan adatbázist próbálunk törölni, amely nem létezik.
SQL DROP DATABASE példák
Az alább található példák segítségével az IF EXISTS módosító jelentőségét és használatát szeretnénk szemléltetni.
Példa #1: IF EXISTS módosító nélkül
Egy olyan adatbázist próbálok törölni IF EXISTS módosító nélkül, amely nem létezik, így ebben az esetben a visszajelzés egy hiba.
SQL kód
DROP DATABASE NemLétezőAdatbázis;
Code language: SQL (Structured Query Language) (sql)
Eredmény
Hiba: #1008 – A(z) ‘nemlétezőadatbázis’ adatbázis nem szüntethető meg. Az adatbázis nem létezik.
Példa #2: IF EXISTS módosítóval
Ebben a példában továbbra is egy olyan adatbázist próbálok törölni, amely nem létezik, de itt már megadom az IF EXISTS módosítót, így itt már nem hibaként jelentkezik az üzenet, csak megjegyzésként. (Note)
SQL kód
DROP DATABASE IF EXISTS NemLétezőAdatbázis;
Code language: SQL (Structured Query Language) (sql)
Eredmény
Note: #1008 A(z) ‘nemlétezőadatbázis’ adatbázis nem szüntethető meg. Az adatbázis nem létezik.
A létrehozás sikerességéről az adatbáziskezelő tájékoztat, az eredmény pedig egy a megadott névvel ellátott üres, azaz adatokat, rekordokat nem tartalmazó adatbázis.