Posted in IT

Sequence pada PostgreSQL

Biasanya di MySQL ada auto increment sebagai pencacah nilai, tapi pada basis data PostgreSQL menggunakan sequence sebagai pencacahnya dan cara penggunaannya pun berbeda.
Untuk membuat pencacah seperti auto increment di MySQL, pada PostgreSQL harus dibuat dulu sequence.

 

Contoh membuat sequence :

create sequence nama_seq;
Untuk mengambil nilai dari sequence dapat menggunakan :
  1. currval('nama_seq')
    Mengambil nilai sequence pada tabel
  2. nextval('nama_seq')
    Menambah nilai sequence pada tabel dan mengambilnya
Contoh membuat tabel dengan sequence :
CREATE TABLE nama_table(id numeric not null default nextval(‘nama_seq’), namavarchar);
Contoh menambahkan sequence pada tabel yang belum punya sequence :
ALTER TABLE nama_tabel 
ALTER COLUMN nama_kolom SET DEFAULT NEXTVAL(nama_seq);
udah gitu coba insert :
INSERT INTO nama_tabel(nama) VALUES('tes');
Pada kolom id, otomatis bernilai 1 dari nilai sequence nama_tabel_seq
jika SELECT currval(‘nama_tabel_seq’) dijalankan hasilnya adalah satu dari nilai terakhir sequence nama_tabel_seq. Dan jika dijalankan SELECT nextval(‘nama_tabel_seq’) maka hasilnya adalah 2 menambah nilai sequence nama_tabel_seq. Jika dilakukan insert lagi maka id yang baru adalah 3.
Advertisements

Author:

Siapa itu hilwa? Oh, itu pertanyaan yang sangat bagus! Hilwa itu adalah nickname dari seseorang yang bernama Wirda Hilwa, Tapi Wirda Hilwa itu masih punya nickname yang lain, yaitu wirda, dan iwa. Dari beberapa nickname itu Wirda Hilwa paling suka dipanggil Hilwa, karena arti dari hilwa itu adalah... hmm..., ga jadi deh, rahasia :P . [Sekarang serius mode:on ] Singkatnya aja, hilwa itu adalah seseorang yang hobi baca blog2 orang utk diambil manfaat & pelajaran dari blog tsb. Lalu terinspirasi pula utk membuat blog sendiri, utk berbagi yang bisa dibagi kpd orang lain. Semoga blog ini dapat bermanfaat buat yang baca. Amiin.

One thought on “Sequence pada PostgreSQL

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s