Tanpa DDL, Anda dapat membuat blok PL/SQL anonim dengan mengapit pernyataan dengan BEGIN dan END:
BEGIN
INSERT INTO foo (bar) VALUES('one');
INSERT INTO foo (bar) VALUES('two');
END;
Untuk melakukan DDL (seperti CREATE TABLE), Anda perlu menggunakan PL/SQL dinamis:
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;
INSERTS juga dinamis, karena tabel tidak ada sebelum menjalankan blok sehingga akan gagal dikompilasi.
CATATAN:Ini akan menjadi persyaratan yang tidak biasa:aplikasi biasanya tidak membuat tabel!