Cara Mengosongkan Tabel-Tabel Dalam Database PostgreSQL
| October 15, 2012 | Posted by Joko Rivai under Database, Delphi, Tips & Tricks |
Saat development aplikasi Delphi dengan database sering kita mengisi data dalam tabel-tabel kita untuk ujicoba. Dan setelah rampung, data-data ini akan kita hapus. Yang masalah adalah ketika tabel-tabel dalam database kita cukup banyak dan harus dikosongkan satu demi satu. Adakah cara singkat untuk melakukannya?
Apabila menggunakan database PostgreSQL, kita dapat memanfaatkan fitur stored procedure PostgreSQL untuk menjalankan tugas ini. Keuntungan yang kita peroleh selain pekerjaan menjadi mudah, stored procedure ini juga tersimpan dalam database dan setiap waktu dapat kita gunakan.
Saya sendiri menggunakan SQL berikut untuk mengosongkan semua tabel.
select empty_database(username)
Di mana empty_database() adalah sebuah stored function yang akan menjalan perintah pengosongan tabel dalam database PostgreSQL.
Untuk membuat stored function empty_database() ini, jalankan PgAdmin dan database yang akan dikosongkan. Klik tool SQL Editor. Lihat gambar, saya menandainya dengan kotak merah:

Di Window SQL Editor, hapus isinya dan masukkan kode di bawah:
CREATE OR REPLACE FUNCTION empty_database(username character varying)
RETURNS void AS
$BODY$
DECLARE
statements CURSOR FOR
SELECT tablename FROM pg_tables
WHERE tableowner = username AND schemaname = 'public';
BEGIN
FOR stmt IN statements LOOP
EXECUTE 'TRUNCATE TABLE ' || quote_ident(stmt.tablename) || ' CASCADE;';
END LOOP;
END;
$BODY$
LANGUAGE 'plpgsql' VOLATILE
COST 100;
ALTER FUNCTION empty_database(character varying) OWNER TO postgres;
Stored function di atas memerlukan sebuah parameter input, yaitu username, yang menjadi pemilik tabel-tabel yang akan dihapus. Jadi tabel-tabel yang ownernya berbeda tidak akan dihapus. Defaultnya hanya satu username yaitu “postgres”.
Setelah oke, tekan F5 untuk menjalankan SQL yang ada. Setelah selesai, Anda dapat mengosongkan database dengan menjalan SQL berikut:
select empty_database('postgres');
Dan tunggu sampai selesai. Lama proses tergantung dari struktur database, keterkatian antar tabel semisal trigger dan foriegn key dan faktor-faktor lainnya.
Demikian tulisan singkat ini. Semoga ada manfaat
Incoming search terms:
- cara mengosongkan cd
- cara membuat tabel di postgresql
- cara mengosongkan isi tabel database
- delphi untuk database
- cara menggunakan postgresql
- cara menghapus data di tabel postgresql
- cara menghapus database di postgresql
- function dalam database
- cara membuat database web menggunakan postgresql
- keuntungan function table pada postgresql
Comments
Powered by Facebook Comments










This is the default footer layout. You can easily add or remove columns in the footer.