Jan 11, 2006

Memasukkan Nilai Acak dengan DBMS_RANDOM

·

Untuk memudahkan kita dalam memasukkan nilai-nilai acak ke dalam suatu tabel, Oracle telah menyediakan package (paket) DBMS_RANDOM. Data acak seperti ini biasanya kita gunakan sebagai data dummy (misalnya untuk pengecekan query, dsb); dimana nantinya data-data tersebut akan kita hapus kembali.

Berikut ini contoh kode yang akan menunjukkan penggunaan dari package tersebut.

SQL> create table contoh (
2 x integer,
3 y varchar2(20),
4 z number(3)
5 );

Table created.

SQL> declare
2 i integer;
3 begin
4 for i in 1..9 loop
5 insert into contoh values (
6 i,
7 dbms_random.string('A',30),
8 dbms_random.value(100, 999)
9 );
10 end loop;
11 end;
12 /
declare
*
ERROR at line 1:
ORA-12899: value too large for column "BUDIDBA"."CONTOH"."Y" (actual: 30,
maximum: 20)
ORA-06512: at line 5

SQL> declare
2 i integer;
3 begin
4 for i in 1..9 loop
5 insert into contoh values (
6 i,
7 dbms_random.string('A',20),
8 dbms_random.value(100, 999)
9 );
10 end loop;
11 end;
12 /

PL/SQL procedure successfully completed.

SQL> select X, Y from contoh;

X Y
- --------------------
1 ldCyQDqJblHEVUBgfZxn
2 lIzCgbuifjJxOTKqehzd
3 VvihnXturRRnDoKdszia
4 ZzbPLyigIuTinSvXwbTM
5 TmxIsLKYEAYdwlGhPTgo
6 aFjjakmxEzBMQhsmZkCj
7 mqEpUiPDkqtRiCNiuqPJ
8 RRGWjKrkyZSfSQZRyeVc
9 ViEZzbiCjLTALIZPhEgo

9 rows selected.

SQL>

0 comments: