Pengantar PostgreSQL #2

SQL

Membuat tabel
# CREATE TABLE teriakannya (
nama VARCHAR(60) NOT NULL,
situs VARCHAR(256),
pesan TEXT NOT NULL,
waktu TIMESTAMP NOT NULL DEFAULT now()
);

Menambah baris rekaman
# INSERT INTO teriakannya VALUES ('ade','www.ade.web.id','Salam kenal');

Melihat isi table:
# SELECT * from teriakannya;

nama | situs | pesan | waktu
------+----------------+-------------+----------------------------
ade | http://www.ade.web.id | Salam kenal | 2008-12-06 22:26:59.217386
(1 row)

Memperbarui isi data
# UPDATE teriakannya SET nama='adesaja' WHERE nama='ade';

Menghapus baris rekaman
# DELETE FROM teriakannya where nama='ade';

Membuat view
# CREATE VIEW viewq AS SELECT nama,situs,pesan,waktu, to_char(waktu,'DD-MM-YYYY') as tgl, to_char(waktu,'HH24:MI:SS') as jam FROM teriakannya WHERE waktu>=current_timestamp - interval '2 days ORDER BY WAKTU DESC';

View digunakan sbg pengganti perintah SELECT yg berulang-2 atau untuk menutupi pekerjaan yg sebenarnya.

Menampilkan hasil view
# SELECT * FROM viewq;

Menyertakan bahasa prosedural PL/PGSQL
# CREATE LANGUAGE 'PLPGSQL';

Membuat fungsi PL/PGSQL
# create or replace function simpan_pesan (in_nama varchar, in_situs varchar, in_pesan text)
returns void as $$
begin
insert into teriakannya values (in_nama, in_situs, in_pesan);
end;
$$
language 'plpgsql';

Membuat fungsi trigger:
# CREATE OR REPLACE FUNCTION hapus_data()
RETURNS trigger AS
$BODY$
begin
delete from teriakannya where waktu
return NEW;
end;
$BODY$
LANGUAGE 'plpgsql' ;

Membuat trigger:
# CREATE TRIGGER on_insert
AFTER INSERT
ON teriakannya
FOR EACH ROW
EXECUTE PROCEDURE hapus_data()

3 comments so far

  1. alisyah on

    boleh nanya ga?
    ‘atau untuk menutupi pekerjaan yang sebenarnya’, maksudnya apa ya?

    eshabe: dg view, operator/pengguna view tidak (perlu) tahu dari mana dan bagaimana kolom-2 hasil SELECT * didapat. Dan seandainya ada perubahan struktur tabel(-tabel) yg di view maka pengguna view tidak direpotkan karena perintah query tetap.

  2. Blue'Zz Smile on

    Thx uya untuk infonya..🙂

  3. satriyo al jefari on

    Wah makasih dah ngeposting tentang postgreSql. selama ini pake mySql terus, ganti postgreSql ah.. matur nuwun mas


Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s

%d blogger menyukai ini: