Oracle
 sql >> Datenbank >  >> RDS >> Oracle

So teilen Sie Oracle-SQL-Anweisungen für ADO.NET auf

Ohne die DDL könnten Sie einen anonymen PL/SQL-Block erstellen, indem Sie die Anweisungen mit BEGIN und END umgeben:

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

Um DDL (wie CREATE TABLE) auszuführen, müssten Sie dynamisches PL/SQL verwenden:

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;

Die INSERTS sind ebenfalls dynamisch, da die Tabelle vor dem Ausführen des Blocks nicht existiert und daher nicht kompiliert werden kann.

HINWEIS:Dies wäre eine ungewöhnliche Anforderung:Anwendungen sollten normalerweise keine Tabellen erstellen!