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

Jak podzielić instrukcje SQL Oracle dla ADO.NET?

Bez DDL można utworzyć anonimowy blok PL/SQL, otaczając instrukcje BEGIN i END:

BEGIN
  INSERT INTO foo (bar) VALUES('one');
  INSERT INTO foo (bar) VALUES('two');
END;

Aby wykonać DDL (jak CREATE TABLE), musisz użyć dynamicznego PL/SQL:

BEGIN
  EXECUTE IMMEDIATE 'CREATE TABLE foo (bar VARCHAR2(100))';
  EXECUTE IMMEDIATE 'INSERT INTO foo (bar) VALUES(:v)' USING 'one';
  EXECUTE IMMEDIATE 'INSERT INTO foo (bar) VALUES(:v)' USING 'two';
END;

WSTAWKI są również dynamiczne, ponieważ tabela nie istnieje przed uruchomieniem bloku, więc nie można by jej skompilować.

UWAGA:Byłoby to nietypowe wymaganie:aplikacje nie powinny normalnie tworzyć tabel!



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Wiersz z najnowszą wartością według klienta i miesiąca

  2. Średnia ruchoma Oracle

  3. Jak podzielić odpytywane dane według separatora w Oracle?

  4. Utwórz widok w ciągu 365 dni

  5. Wyraźny LITAGG znajdujący się w podzapytaniu na liście WYBIERZ