DB2 reset identity

Hari ini saya mengalami sedikit problem dalam melakukan load data ke dalam table. Setelah berhasil melakukan loading (bisa dilihat pada artikel ini), data identity yang dihasilkan tidak sesuai yang diinginkan. Hal ini dikarenakan ID tidak dimulai dari 1 melainkan melanjutkan counter yang telah ada.

Misalkan struktur table kita seperti berikut
CREATE TABLE “TEST” (
“USER_ID” BIGINT NOT NULL GENERATED ALWAYS AS IDENTITY (
START WITH +1
INCREMENT BY +1
MINVALUE +1
MAXVALUE +9223372036854775807
NO CYCLE
NO CACHE
NO ORDER ) ,
“Nama” VARCHAR(20) NOT NULL ,
“Alamat” VARCHAR(20) NOT NULL)
IN “USERSPACE1″ ;

Berikut cara untuk mereset kembali counternya.
1. Jalankan command berikut
alter table <nama_table> alter <column_name> restart with 1
2. Lakukan loading kembali dan lihat apakah ID dimulai dengan angka yang diinginkan

Semoga berguna

This entry was posted in DB2, Tips n trick and tagged , , , , , , , , . Bookmark the permalink.

Leave a Reply

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>