Źródło: Arkusze CKE
W języku SQL, aby zabezpieczyć kwerendę CREATE USER tak, aby nie zostało utworzone kontow przypadku, gdy już istnieje, można posłużyć się składnią
Warianty odpowiedzi
-
A
A. CREATE USER 'anna'@'localhost' IDENTIFIED BY 'yu&T%';
-
B
B. CREATE USER OR DROP 'anna'@'localhost' IDENTIFIED BY 'yu&T%';
-
C
C. CREATE OR REPLACE USER 'anna'@'localhost' IDENTIFIED BY 'yu&T%';
-
D
D. CREATE USER IF NOT EXISTS 'anna'@'localhost' IDENTIFIED BY 'yu&T%';
Wyjaśnienie
W pisaniu produkcyjnych skryptów SQL kluczowa jest odporność na błędy. Jeśli spróbujemy utworzyć użytkownika, który już istnieje w systemie, baza zgłosi błąd i przerwie wykonywanie skryptu.
Zabezpieczeniem przed taką sytuacją jest dodanie klauzuli IF NOT EXISTS. Sprawia ona, że silnik bazy najpierw sprawdza obecność danego konta – jeśli istnieje, polecenie zostanie po prostu zignorowane bez zgłaszania błędu.
Składnię tę stosuje się powszechnie w SQL nie tylko przy tworzeniu użytkowników, ale też przy tworzeniu baz danych (CREATE DATABASE IF NOT EXISTS) czy tabel (CREATE TABLE IF NOT EXISTS).