1. Menggunakan sequence
SQL> SELECT max(NO) + 1 FROM seqn_ctk WHERE NO IS NOT NULL;
=> catat hasilnya, misal: 101

SQL> CREATE SEQUENCE dummy_seq START WITH <nilai dari hasil SELECT di atas>;
=> misal: CREATE SEQUENCE dummy_seq START WITH 101;

SQL> UPDATE seqn_ctk SET NO = dummy_seq.NEXTVAL WHERE NO IS NULL;

SQL> COMMIT;

2. Menggunakan PL/SQL PROCEDURE
DECLARE
 temp NUMBER;
 CURSOR c1 IS SELECT * FROM seqn_ctk WHERE NO IS NULL FOR UPDATE;
BEGIN
 SELECT max(NO) INTO temp FROM seqn_ctk WHERE NO IS NOT NULL;
 FOR i IN c1 LOOP
  temp := temp + 1;
  UPDATE seqn_ctk SET NO = temp WHERE CURRENT OF c1;
 END LOOP;
 COMMIT; 
END;
/

cmiiw,
bowo


--- In [email protected], Padang Nadimpu <nadi...@...> wrote:
>
> Saya menggunakan Oracle9i, nama table adalah seqn_ctk, yg terdiri dr kolom 
> (field) NO, ID, TYPE, OPR, DATE.
> Contoh record table seqn_ctk, sebagai berikut :
> 
> -------------------------------------------------
> NO  |ID              |TYPE|OPR        |DATE      
> -------------------------------------------------
>    1|7172070702570001|   1|DEYSI LASUT|09-08-2010
>    2|7172011704720002|   1|DEYSI LASUT|02-08-2010
>    3|7172015411850005|   3|DEYSI LASUT|02-08-2010
>    4|7172011010700007|   2|TREISJE    |03-08-2010
>    5|7172010106780004|   1|TREISJE    |03-08-2010
>  100|7172011010700006|   1|TREISJE    |10-08-2010
> 
>     |7172051401590001|   1|SONDAKH    |11-04-2009
>     |7172053103570001|   1|SONDAKH    |11-04-2009
>     |7172020305630001|   1|SONDAKH    |16-04-2009
>     |7172025409680001|   1|SONDAKH    |16-04-2009
>     |7172056201730002|   1|SONDAKH    |17-04-2009
>     |7172057010750002|   1|SONDAKH    |14-04-2009
>     |7172050706760002|   1|SONDAKH    |17-04-2009
>     |7172050510790003|   1|SONDAKH    |16-04-2009
> 
> Contoh record di atas, terlihat kolom NO (nomor urut mulai dari 1 sampai 
> sekian misalnya 100),
> 
> Mohon solusi syntak SQL, agar kosong kolom NO (nomor urut) yg msh kosong mnjd 
> terisi sesuai urutan berikutnya. Tambahan informasi, kolom NO (nomor urut) yg 
> msh kosong sgt bnyk recordnya.
> 
> Atas bantuan syntak SQL nomor urut yg masih kosong, diucapkan terima kasih 
>


Kirim email ke