sql >> Databasteknik >  >> RDS >> Oracle

Släpp tabell om den finns

Du kan inte direkt exekvera DDL-satser från ett PL/SQL-block - du måste använda EXECUTE IMMEDIATE istället:

declare
  i_cnt number;
begin
  select count(1) into i_cnt 
  from dba_tables where table_name=upper('foo') and owner=upper('bar'); 
  if i_cnt > 0 then 
    execute immediate 'drop table foo'; 
  end if;
end;



  1. Ställ in databas och skapa en skrivskyddad användare i AWS Redshift och Mysql

  2. Använda en HTML-kryssruta för att sätta 1 eller 0 i en MySQL-tabell

  3. 25 Microsoft Access-genvägar för att spara tid i tabeller i databladsvy

  4. 5 sätt att köra ett SQL-skript från en fil i SQLite