Oracle
 sql >> Teknologi Basis Data >  >> RDS >> Oracle

Membuat Pengguna Oracle jika belum ada

IF NOT EXISTS sintaks tersedia di SQL Server, tidak tersedia di Oracle.

Secara umum, skrip Oracle cukup menjalankan CREATE pernyataan, dan jika objek sudah ada, Anda akan mendapatkan kesalahan yang menunjukkan itu, yang dapat Anda abaikan. Inilah yang dilakukan semua skrip penerapan Oracle standar.

Namun, jika Anda benar-benar ingin memeriksa keberadaan, dan hanya mengeksekusi jika objek tidak ada, sehingga menghindari kesalahan, Anda dapat membuat kode PL/SQL memblokir. Tulis SQL yang memeriksa keberadaan pengguna, dan jika tidak ada, gunakan EXECUTE IMMEDIATE untuk melakukan CREATE USER dari PL/SQL blokir.

Contoh blok PL/SQL seperti itu mungkin:

declare
userexist integer;
begin
  select count(*) into userexist from dba_users where username='SMITH';
  if (userexist = 0) then
    execute immediate 'create user smith identified by smith';
  end if;
end;
/


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Tidak ada nama pengguna HR di Oracle 12c

  2. Lewati SELECT STATEMENT sebagai parameter IN ke prosedur dan jalankan di Oracle

  3. Pernyataan PL/SQL SQL*Plus Diabaikan

  4. Fungsi yang setara untuk DATEADD() di Oracle

  5. Jumlah kolom