Oracle
 sql >> Teknologi Basis Data >  >> RDS >> Oracle

ALTER &DROP Tabel DDL Dengan Jalankan Segera Di Oracle Database

ALTER &DROP Tabel DDL

Sampai sekarang, kami telah mempelajari semua cara yang mungkin untuk membuat tabel tepat di dalam blok PL/SQL menggunakan Native Dynamic SQL. Anda dapat memeriksanya di dua tutorial terakhir yaitu tutorial 82 dan tutorial 83.

Terima kasih, SQL Dinamis karena memberi kami kekuatan untuk mengeksekusi pernyataan DDL dan DML di blok PL/SQL kami. Oke, tenang kalian semua orang Zaman Batu! Saya tahu bahwa paket DBMS_SQL masih ada tetapi dibandingkan dengan SQL dinamis saya merasa sangat kompleks, belum lagi kinerjanya yang lamban. Bagaimanapun, jadi

Apa yang kita pelajari dari tutorial ini?

Dalam tutorial ini kita akan belajar bagaimana menggunakan ALTER &DROP table DDL dengan Execute Immediate statement dari Native dynamic SQL. Artinya, pada akhir tutorial ini Anda akan mampu secara dinamis memodifikasi dan menghapus objek database seperti tabel langsung melalui program PL/SQL Anda.

Mengapa kita harus mempelajarinya?

Beberapa orang mungkin menganggap topik tersebut tidak relevan, tetapi ini bukan topik yang sangat penting terutama dari perspektif Sertifikasi Oracle dan Wawancara. Selain itu, sebagai pengembang, kita semua harus memiliki dasar-dasar yang jelas karena Anda tidak pernah tahu kapan Anda akan membutuhkannya.

Jadi, mari kita mulai tutorialnya, jika Anda masih memiliki pertanyaan, silakan kirim pesan ke Facebook saya, di sini. Pertama-tama mari kita pelajari cara memodifikasi tabel menggunakan ALTER TABLE dengan Execute Immediate of Dynamic SQL.

Bagaimana cara mengubah tabel secara dinamis?

Untuk memodifikasi objek database seperti tabel, kami menggunakan ALTER DDL di Oracle Database. Memodifikasi tabel menggunakan ALTER DDL melalui SQL sangatlah mudah dibandingkan dengan PL/SQL.

PL/SQL tidak mendukung pernyataan DDL, DML dan DQL secara langsung. Untuk mengeksekusi pernyataan SQL yang disebutkan, kita perlu menggunakan SQL Dinamis atau paket DBMS_SQL. Di antara keduanya, Native Dynamic SQL (NDS) adalah opsi yang paling layak karena kesederhanaannya dan kinerja yang dioptimalkan. Anda dapat membaca keunggulan paket NDS dibandingkan DBMS_SQL di sini.

Jadi, cara paling sederhana untuk memodifikasi objek database secara dinamis seperti tabel adalah dengan menggunakan Alter Table DDL dengan pernyataan Execute Immediate dari Native Dynamic SQL.

Contoh:Ubah Tabel DDL dengan Execute Immediate statement.

Untuk demonstrasi kita akan menggunakan tabel yang sama yang kita buat di tutorial terakhir. Di sana kami membuat tabel dengan nama tut_83 yang memiliki dua kolom tut_num dari tipe data NUMBER dan tut_name dari tipe data varchar 2.

Jika Anda berlatih dengan saya maka Anda harus membuat tabel itu di skema Anda. Jika demikian, maka Anda siap untuk pergi atau kunjungi tutorial terakhir dan buat tabel itu.

Sekarang katakanlah kita ingin menambahkan kolom lain tut_date dari tipe data tanggal ke tabel ini dan itu juga menggunakan SQL dinamis asli. Untuk melakukan itu kita perlu menggunakan ALTER TABLE DDL dengan pernyataan Execute Immediate.

Langkah 1:Siapkan pernyataan DDL.

Praktik terbaik untuk menulis program SQL Dinamis adalah menyiapkan pernyataan SQL Anda sebelumnya.

ALTER TABLE tut_83 ADD tut_date DATE

Berikut adalah ALTER TABLE DDL yang akan kita gunakan untuk eksekusi dinamis. Pernyataan ini akan menambahkan kolom tut_date dari tipe data DATE ke tabel tut_83.

Anda juga dapat menonton video tutorial untuk demonstrasi langsung dari konsep tersebut.

Langkah 2:Tulis program Native Dynamic SQL.

Setelah pernyataan DDL Anda siap, maka Anda siap untuk menulis blok PL/SQL.

SET SERVEROUTPUT ON;
DECLARE
 ddl_qry VARCHAR2(50);
BEGIN
 ddl_qry := 'ALTER TABLE tut_83
        	 ADD  tut_date DATE';
 EXECUTE IMMEDIATE ddl_qry;
END;
/  

Pada eksekusi yang berhasil, program PL/SQL ini akan mengubah tabel yang disebutkan di atas. Anda dapat memeriksa struktur tabel yang dimodifikasi dengan menggunakan perintah DESCRIBE, seperti ini

DESCRIBE tut_83;

ATAU

DESC tut_83;

Itu saja yang harus Anda lakukan. Begitulah cara kita memodifikasi objek database secara dinamis menggunakan ALTER TABLE DDL dengan pernyataan Execute Immediate. Itu juga menyimpulkan bagian pertama dari tutorial sekarang mari kita beralih ke yang kedua dan mempelajari cara menghapus tabel menggunakan SQL dinamis asli.

Bagaimana cara menghapus tabel secara dinamis?

Untuk menghapus objek database seperti tabel kita menggunakan DROP DDL di Oracle Database. Seperti pernyataan DDL lainnya, pernyataan ini juga tidak didukung secara langsung oleh mesin PL/SQL. Dan seperti biasa kita perlu menggunakan Dynamic SQL untuk menjalankan DDL ini juga. Mari kita lihat cara menghapus tabel menggunakan Execute Immediate of Native Dynamic SQL.

Langkah 1:Siapkan pernyataan DDL.

DDL untuk menghapus tabel adalah:

DROP TABLE tut_83

DDL ini akan menghapus tabel tut_83 dari skema.

Langkah 2:Tulis program PL/SQL untuk tabel DROP dengan Execute Immediate.

SET SERVEROUTPUT ON;
DECLARE
    ddl_qry     VARCHAR2 (100);
BEGIN
    ddl_qry := 'DROP TABLE tut_83';
    EXECUTE IMMEDIATE ddl_qry;
END;
/

Jadi eksekusi yang sukses dari program ini harus menjatuhkan tabel tut_83 yang dapat Anda periksa dengan mudah dengan menggunakan perintah DESCRIBE seperti yang ditunjukkan di atas.

Itulah tutorial cara memodifikasi dan menghapus objek database menggunakan Alter &Drop table DDL dengan Execute Immediate statement Native Dynamic SQL di Oracle Database. Semoga Anda menikmati membacanya dan belajar sesuatu yang baru. Silakan bagikan blog ini di media sosial Anda dengan teman-teman Anda. Anda juga dapat terhubung dengan saya di Halaman Facebook saya untuk wawasan yang lebih menarik. Terima kasih &semoga harimu menyenangkan!


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Sesi tidak aktif di Oracle oleh JDBC

  2. Bisakah terjadi deadlock dengan metode akses yang sama?

  3. Contoh Pekerjaan DBMS_SCHEDULER Jalankan Setiap Jam

  4. Model Format yang Didukung untuk Fungsi Tanggal ROUND() dan TRUNC() di Oracle

  5. SQLPlus - spooling ke banyak file dari blok PL/SQL