Oracle
 sql >> Baza danych >  >> RDS >> Oracle

Jak używać poleceń, takich jak DROP TABLE itp. w ramach procedury składowanej?

CREATE OR REPLACE PROCEDURE proc_name AS
BEGIN
EXECUTE IMMEDIATE 'DROP TABLE SQL2005TEST.ABSENCEFULLDATADIFF_YESTERDAY';
.....
EXECUTE IMMEDIATE 'CREATE TABLE SQL2005TEST.ABSENCELATESTEND_YESTERDAY
                       AS SELECT * FROM SQL2005TEST.ABSENCELATESTEND';
....
....
EXCEPTION
  ....
  ....
END;

EXECUTE IMMEDIATE Instrukcja wykonuje dynamiczną instrukcję SQL lub anonimowy blok PL/SQL w ramach bloku PL/SQL, procedury składowanej lub pakietu. Jest to bardziej szczegółowo używane, jeśli chcesz uruchomić instrukcje DDL, takie jak DROP , CREATE TABLE itd. Nie możesz wykonywać poleceń DDL z PL/SQL jako instrukcji DML, więc jedynym sposobem jest dynamiczny SQL. Więcej informacji tutaj i tutaj .




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Korzystanie z usług internetowych z Oracle PL/SQL

  2. Monitor zmiany tabeli Oracle

  3. Funkcja NVL2 w Oracle

  4. Linq to Entities Group By (OUTER APPLY) oracle 11.2.0.3.0 nie obsługuje zastosowania

  5. Dynamiczna suma biegu