Situs informasi aplokasi, Tips dan trik, Berita, informasi Teknologi, perkembangan Gadget dan internet.

Thursday, November 14, 2019

Tips Dan Trik Bermain Main Dengan String Di Pl/Sql

Tipe String

Ada 3 tipe String di Oracle PL/SQL, yaitu:

  • Fixed-Length String

    Adalah String yang panjangnya fixed (sudah ditentukan). Apabila panjangnya kurang, maka secara otomatis akan menambahkan spasi kosong hingga dengan akhir. Tipe data yang biasa dipakai ialah CHAR, NCHAR

  • Variable-Length String

    Adalah string yang panjangnya dinamis (variable). Memori akan menyimpan string tersebut sesuai dengan panjang string sebenarnya, walaupun ukurannya lebih kecil dari panjang string yang ditentukan. Tipe data yang biasa dipakai ialah VARCHAR, VARCHAR2, NVARCHAR2.

  • CLOB (Character Large Object)

    CLOB ialah tipe data yang dipakai untuk menyimpan data karakter yang ukurannya sangat besar hingga tera bytes.

String Dalam Program

Dibawah ini ialah pola agenda PL/SQL yang memakai deklarasi String.

DECLARE    nama VARCHAR2(30);    jurusan VARCHAR2(40);    greetings CLOB;    status CHAR(1); BEGIN    nama := 'Nursalim';    jurusan := 'Teknik Informatika';    greetings := 'Hello! Saya Nursalim dari Jurusan Teknik Informatika UNINDRA';    status := 'Y';        IF status = 'Y' THEN       DBMS_OUTPUT.PUT_LINE(nama);       DBMS_OUTPUT.PUT_LINE(jurusan);       DBMS_OUTPUT.PUT_LINE(greetings);    END IF; END; / 

Menggabungkan Dua String

Untuk menggabungkan dua string, Anda sanggup memakai operator concatenation ( || ). Untuk lebih jelasnya, Anda sanggup lihat menyerupai pola agenda di bawah:

DECLARE    string1 VARCHAR2(30);    string2 VARCHAR2(40);     BEGIN    string1 := 'Nursalim';    string2 := 'Teknik Informatika';     DBMS_OUTPUT.PUT_LINE(string1||' Jurusan '||string2);    END; / 

String Built-in Function

Di bawah ini ialah tabel macam-macam fungsi String bawaan (built-int) Oracle PL/SQL

Fungsi Deskripsi
ASCII(x) Menghasilkan nilai ASCII dari karakter x
CHR(x) Menghasilkan nilai karakter dari ASCII x
CONCAT(x,y) Menggabungkan string x dan y
INITCAP(x) Menghasilkan inital letter, yaitu kata yang aksara depannya kapital sedangkan aksara selanjutnya ialah aksara kecil (lowercase).
INSTR(x, str1, [,start] [,occourence] ) Mencari st1 dalam string x menurut posisi awal [start] dan sebanyak [occurence].
LENGTH(x) Mencari panjang dari suatu string x.
LOWER(x) Mengubah String x menjadi aksara kecil (lowercase).
LPAD(x,width[,str1]) Menambahkan (padding) str1 pada string dengan posisi sebelah kiri hingga dengan batas maksimum (width).
LTRIM(x[,str1]) Melakukan proses trim (menghapus spasi) di sebelah string x.
NVL(x,value) Jika nilai x ialah null maka akan menghasilkan nilai value. Sedangkan kalau tidak maka akan menghasilkan x.
NVL2(x,value1, value2) Menghasilkan value1 jikalau x tidak sama dengan null, dan menghasilkan value2 jikalau x sama dengan null.
REPLACE(x,string_search, string_replace) Mengganti string_search dengan string_replace pada sebuah string x.
RPAD(x,width[, pad_string]) PAD string x dari sebelah kanan dengan menambahkan pad_string sepanjang string width
RTRIM(x[, trim_string]) TRIM dari sebelah kanan string x
SUBSTR(x, start[, length]) Menghasilkan nilai substring dari string x menurut posisi awal (start) dan panjang string substring (length)
TRIM([trim_char FROM] x) Menghapus/Menghilangkan trim_char dari string x.
UPPER(x) Mengubah String x menjadi aksara besar (uppercase)

Contoh Program

DECLARE    str1 VARCHAR2(50) := 'Selamat!! mencar ilmu PL/SQL ya..';    str2 VARCHAR2(50) := '....Jangan lupa siapin kopi....'; BEGIN    DBMS_OUTPUT.PUT_LINE('str1 = '||str1);    DBMS_OUTPUT.PUT_LINE('str2 = '||str2);    DBMS_OUTPUT.PUT_LINE('CONCAT (str1,str2) = '||CONCAT(str1,str2));    DBMS_OUTPUT.PUT_LINE('INITCAP (str1) = '||INITCAP(str1));    DBMS_OUTPUT.PUT_LINE('INSTR (str1, ''e'', 1) = '||INSTR(str1, 'e', 1));    DBMS_OUTPUT.PUT_LINE('LENGTH (str1) = '||LENGTH(str1));    DBMS_OUTPUT.PUT_LINE('LOWER (str1) = '||LOWER(str1));    DBMS_OUTPUT.PUT_LINE('REPLACE (str1) = '||REPLACE(str1,'a','@'));    DBMS_OUTPUT.PUT_LINE('SUBSTR (str1, 1, 10) = '||SUBSTR(str1,1,10));    DBMS_OUTPUT.PUT_LINE('SUBSTR (str1, -10) = '||SUBSTR(str1,-11));    DBMS_OUTPUT.PUT_LINE('UPPER (str1) = '||UPPER(str1)); END;  

Output:

str1 = Selamat!! mencar ilmu PL/SQL ya.. str2 = ....Jangan lupa siapin kopi.... CONCAT (str1,str2) = Selamat!! mencar ilmu PL/SQL ya......Jangan lupa siapin kopi.... INITCAP (str1) = Selamat!! Belajar Pl/Sql Ya.. INSTR (str1, 'e', 1) = 2 LENGTH (str1) = 29 LOWER (str1) = selamat!! mencar ilmu pl/sql ya.. REPLACE (str1) = Sel@m@t!! bel@j@r PL/SQL y@.. SUBSTR (str1, 1, 10) = Selamat!!  SUBSTR (str1, -10) = PL/SQL ya.. UPPER (str1) = SELAMAT!! BELAJAR PL/SQL YA..  PL/SQL procedure successfully completed.