[Database Boy] Praktikum 1 - Deklarasi Variabel & Pemrograman dengan PL/SQL
-
Upload
yufi-eko-firmansyah -
Category
Documents
-
view
244 -
download
7
description
Transcript of [Database Boy] Praktikum 1 - Deklarasi Variabel & Pemrograman dengan PL/SQL
![Page 1: [Database Boy] Praktikum 1 - Deklarasi Variabel & Pemrograman dengan PL/SQL](https://reader033.fdocuments.us/reader033/viewer/2022061321/55cf9766550346d033916bee/html5/thumbnails/1.jpg)
BASIS DATA LANJUT : PRAKTIKUM 1Yufi Eko Firmansyah ( 2103121049 )
Dosen Pembimbing : Rengga Asmara, S.Kom, OCA. B3 Informatics Brothers & Sisters
![Page 2: [Database Boy] Praktikum 1 - Deklarasi Variabel & Pemrograman dengan PL/SQL](https://reader033.fdocuments.us/reader033/viewer/2022061321/55cf9766550346d033916bee/html5/thumbnails/2.jpg)
PembahasanPendahuluanDeklarasi VariabelPemrograman dengan PL/SQL
![Page 3: [Database Boy] Praktikum 1 - Deklarasi Variabel & Pemrograman dengan PL/SQL](https://reader033.fdocuments.us/reader033/viewer/2022061321/55cf9766550346d033916bee/html5/thumbnails/3.jpg)
Pendahuluan
![Page 4: [Database Boy] Praktikum 1 - Deklarasi Variabel & Pemrograman dengan PL/SQL](https://reader033.fdocuments.us/reader033/viewer/2022061321/55cf9766550346d033916bee/html5/thumbnails/4.jpg)
Jalur Sertifikasi Oracle
Oracle tracks :1. DBA Track
a. SQLb. Fundamental 1a & b Oracle Certificate Associate untuk DBA Trackc. Fundamental 2d. Performance Tuninga, b, c, & d Oracle Certificate Professional untuk DBA Track
2. Developer Tracka. SQLb. PL/SQL Program Unitsa & b Oracle Certificate Associate untuk Developer Trackc. Build Internet Application 1d. Build Internet Application 2a, b, c & d Oracle Certificate Professional untuk Developer Track
BASIS DATA LANJUTDay-01
P1. Pendahuluan
![Page 5: [Database Boy] Praktikum 1 - Deklarasi Variabel & Pemrograman dengan PL/SQL](https://reader033.fdocuments.us/reader033/viewer/2022061321/55cf9766550346d033916bee/html5/thumbnails/5.jpg)
Tentang PL/SQL
PL/SQL singkatan dari Programming Language/SQL yaitu bahasa prosedural yang disediakan Oracle untuk Oracle sebagai perluasan dari SQL statement.
SQL merupakan singkatan dari Structured Query Language yaitu bahasa standar untuk mengakses data pada basis data relasional.
BASIS DATA LANJUTDay-01
P1. Pendahuluan
![Page 6: [Database Boy] Praktikum 1 - Deklarasi Variabel & Pemrograman dengan PL/SQL](https://reader033.fdocuments.us/reader033/viewer/2022061321/55cf9766550346d033916bee/html5/thumbnails/6.jpg)
Keuntungan Penggunaan PL/SQL
• Terintegrasi• Pengembangan Program yang bersifat Modular• Portabel
BASIS DATA LANJUTDay-01
P1. Pendahuluan
![Page 7: [Database Boy] Praktikum 1 - Deklarasi Variabel & Pemrograman dengan PL/SQL](https://reader033.fdocuments.us/reader033/viewer/2022061321/55cf9766550346d033916bee/html5/thumbnails/7.jpg)
Deklarasi Variabel
![Page 8: [Database Boy] Praktikum 1 - Deklarasi Variabel & Pemrograman dengan PL/SQL](https://reader033.fdocuments.us/reader033/viewer/2022061321/55cf9766550346d033916bee/html5/thumbnails/8.jpg)
Tujuan Pembelajaran
• Mengenal blok PL/SQL beserta bagiannya• Memahami variabel dalam PL/SQL• Dapat mendeklarasikan dan menggunakan variabel pada PL/SQL
BASIS DATA LANJUTDay-01
P1. Deklarasi Variabel
![Page 9: [Database Boy] Praktikum 1 - Deklarasi Variabel & Pemrograman dengan PL/SQL](https://reader033.fdocuments.us/reader033/viewer/2022061321/55cf9766550346d033916bee/html5/thumbnails/9.jpg)
Struktur Blok PL/SQL
• PL/SQL merupakan block-structured language, dalam arti : program yang ditulis dengan PL/SQL dapat dibagi-bagi ke dalam blok logika.• Blok dalam PL/SQL terdiri dari bagian-bagian sebagai berikut :
BASIS DATA LANJUTDay-01
P1. Deklarasi Variabel
DECLARE --optional
BEGIN --required
EXCEPTION --optional
END; --required
daftar variabel & cursor
awal blok yang dapat dieksekusi
penanganan kesalahan
akhir blok yang dapat dieksekusi
![Page 10: [Database Boy] Praktikum 1 - Deklarasi Variabel & Pemrograman dengan PL/SQL](https://reader033.fdocuments.us/reader033/viewer/2022061321/55cf9766550346d033916bee/html5/thumbnails/10.jpg)
Tipe Blok PL/SQL
Ada 3 tipe blok dalam PL/SQL :
BASIS DATA LANJUTDay-01
P1. Deklarasi Variabel
Anonymous Procedure Function
[DECLARE]BEGIN -- Statements[EXCEPTION]END;
PROCEDURE nameISBEGIN -- Statements[EXCEPTION]END;
FUNCTION nameRETURN datatypeISBEGIN -- Statements RETURN value;[EXCEPTION]END;
![Page 11: [Database Boy] Praktikum 1 - Deklarasi Variabel & Pemrograman dengan PL/SQL](https://reader033.fdocuments.us/reader033/viewer/2022061321/55cf9766550346d033916bee/html5/thumbnails/11.jpg)
Konstruksi Program
• PL/SQL dapat digunakan pada 2 lingkungan berikut :• Oracle Server (Database Server Constructs)• Oracle Development Tools (Tools Constructs)
• Berikut ini bagian-bagian PL/SQL yang dapat mengkonstruksi kedua lingkungan yang berbeda tersebut :• Database Server Constructs
Anonymous blocks, Application procedures or functions, Application packages, Application triggers.
• Tools ConstructsAnonymous blocks, Stored procedures or function, Stored packages, Database triggers, Object types.
BASIS DATA LANJUTDay-01
P1. Deklarasi Variabel
![Page 12: [Database Boy] Praktikum 1 - Deklarasi Variabel & Pemrograman dengan PL/SQL](https://reader033.fdocuments.us/reader033/viewer/2022061321/55cf9766550346d033916bee/html5/thumbnails/12.jpg)
Penggunaan Variabel
Variabel dalam PL/SQL dapat digunakan dalam berbagai cara berikut :• Deklarasi dan inisialisasi variabel pada bagian deklarasi (DECLARE).• Menandai nilai i baru pada bagian yang dapat dijalankan (executable).• Suatu nilai dapat dilewatkan melalui variabel sebagai parameter dari suatu sub
program.• Hasil dari suatu proses dapat ditampilkan melalui variabel output.
BASIS DATA LANJUTDay-01
P1. Deklarasi Variabel
![Page 13: [Database Boy] Praktikum 1 - Deklarasi Variabel & Pemrograman dengan PL/SQL](https://reader033.fdocuments.us/reader033/viewer/2022061321/55cf9766550346d033916bee/html5/thumbnails/13.jpg)
Tipe-Tipe Variabel
Tipe-tipe variabel dalam PL/SQL :• Scalar• Composite• Reference• LOB (large object)
BASIS DATA LANJUTDay-01
P1. Deklarasi Variabel
Tipe Data Contoh
BOOLEAN TRUE
DATE 25-JAN-01
BLOB Data foto
LONG Data percakapan
NUMBER 25610.08
BFILE Data film
VARCHAR2 Nama Kota
![Page 14: [Database Boy] Praktikum 1 - Deklarasi Variabel & Pemrograman dengan PL/SQL](https://reader033.fdocuments.us/reader033/viewer/2022061321/55cf9766550346d033916bee/html5/thumbnails/14.jpg)
Latihan Soal
1. Evaluasi tiap-tiap deklarasi variabel berikut ini. Mana yang legal dan mana yang ilegal !
a. DECLAREv_id NUMBER(4);
b. DECLAREv_x, v_y, v_z VARCHAR2(10);
c. DECLAREv_birthdate DATE NOT NULL;
d. DECLARE v_in_stock BOOLEAN := 1;
BASIS DATA LANJUTDay-01
P1. Deklarasi Variabel
LEGAL
ILEGAL
ILEGAL
ILEGAL
![Page 15: [Database Boy] Praktikum 1 - Deklarasi Variabel & Pemrograman dengan PL/SQL](https://reader033.fdocuments.us/reader033/viewer/2022061321/55cf9766550346d033916bee/html5/thumbnails/15.jpg)
Latihan Soal
2. Pada tiap assignment berikut, yang manakah statement yang valid dan mana yang tidak valid, kemudian nyatakan tipe datanya !
a. v_days_to_go := v_due_date – SYSDATE;b. v_sender := USER || ‘: ‘ || TO_CHAR(v_dept_no);c. v_sum := $100,000 + $250,000d. v_flag := TRUE;e. v_n1 := v_n2 > (2 * v_n3);f. v_value := NULL;
BASIS DATA LANJUTDay-01
P1. Deklarasi Variabel
VALID -> DATE
TIDAK VALID -> VARCHAR2VALID -> VARCHAR2
VALID -> BOOLEAN
VALID -> NUMBERVALID -> VARCHAR2
![Page 16: [Database Boy] Praktikum 1 - Deklarasi Variabel & Pemrograman dengan PL/SQL](https://reader033.fdocuments.us/reader033/viewer/2022061321/55cf9766550346d033916bee/html5/thumbnails/16.jpg)
Latihan Soal
3. Buat anonymous block untuk menampilkan kata ‘I love Oracle’, buat dengan dua cara. Cara pertama menggunakan bind variable dan perintah PRINT untuk menampilkannya. Cara kedua menggunakan DBMS_OUTPUT.PUT_LINE
BASIS DATA LANJUTDay-01
P1. Deklarasi Variabel
![Page 17: [Database Boy] Praktikum 1 - Deklarasi Variabel & Pemrograman dengan PL/SQL](https://reader033.fdocuments.us/reader033/viewer/2022061321/55cf9766550346d033916bee/html5/thumbnails/17.jpg)
Latihan Soal
4. Buat kode PL/SQL yang mendeklarasikan dua variable dan masing-masing nilainya berikut ini :
BASIS DATA LANJUTDay-01
P1. Deklarasi Variabel
Variabel Value
V_CHAR ‘42 adalah sebuah angka’
V_NUM Dua karakter pertama dari variabel V_CHAR yaitu 42
![Page 18: [Database Boy] Praktikum 1 - Deklarasi Variabel & Pemrograman dengan PL/SQL](https://reader033.fdocuments.us/reader033/viewer/2022061321/55cf9766550346d033916bee/html5/thumbnails/18.jpg)
Pemrograman dengan PL/SQL
![Page 19: [Database Boy] Praktikum 1 - Deklarasi Variabel & Pemrograman dengan PL/SQL](https://reader033.fdocuments.us/reader033/viewer/2022061321/55cf9766550346d033916bee/html5/thumbnails/19.jpg)
Tujuan Pembelajaran
• Memahami bagian executable dari PL/SQL block• Menggunakan identifier secara benar• Memahami aturan pada blok bersarang (nested block)
BASIS DATA LANJUTDay-01
P1. Pemrograman dengan PL/SQL
![Page 20: [Database Boy] Praktikum 1 - Deklarasi Variabel & Pemrograman dengan PL/SQL](https://reader033.fdocuments.us/reader033/viewer/2022061321/55cf9766550346d033916bee/html5/thumbnails/20.jpg)
Sintaks PL/SQL
Baris-baris statement dalam PL/SQL merupakan kumpulan karakter yang dapat diklasifikasikan sebagai berikut :• Delimiter (simple dan compound symbol)• Identifiers, termasuk reserved words (keywords)• Literal• Komentar
BASIS DATA LANJUTDay-01
P1. Pemrograman dengan PL/SQL
![Page 21: [Database Boy] Praktikum 1 - Deklarasi Variabel & Pemrograman dengan PL/SQL](https://reader033.fdocuments.us/reader033/viewer/2022061321/55cf9766550346d033916bee/html5/thumbnails/21.jpg)
Identifier
Identifier digunakan untuk memberi nama bagian Pl/SQL, meliputi konstanta, variabel, exception, cursor, cursor variable, subprogram dan packages.
Aturan penamaan identifier :• Maksimal 30 karakter• Harus dimulai dengan karakter alfabet• Dapat terdiri dari angka, simbol dollar, underscores (_) dan tanda bilangan (+ atau -)• Tidak boleh ada spasi, tanda slash (/), hypen (-), ampersand (&)• Tidak memiliki nama yang sama dengan kolom database• Bukan merupakan reserved word (keyword)
BASIS DATA LANJUTDay-01
P1. Pemrograman dengan PL/SQL
![Page 22: [Database Boy] Praktikum 1 - Deklarasi Variabel & Pemrograman dengan PL/SQL](https://reader033.fdocuments.us/reader033/viewer/2022061321/55cf9766550346d033916bee/html5/thumbnails/22.jpg)
Literal dan Slash
• Literal terdiri dari karakter dan numerik• Karakter literal harus diapit oleh tanda petik. Contoh penggunaan literal :• v_name := ‘Yufi Eko Firmansyah’;
• Numerik literal dapat berupa suatu nilai atau notasi scientific• Slash (/) digunakan untuk menjalankan blok PL/SQL dalam file script atau
SQL*Plus prompt
BASIS DATA LANJUTDay-01
P1. Pemrograman dengan PL/SQL
![Page 23: [Database Boy] Praktikum 1 - Deklarasi Variabel & Pemrograman dengan PL/SQL](https://reader033.fdocuments.us/reader033/viewer/2022061321/55cf9766550346d033916bee/html5/thumbnails/23.jpg)
Komentar
Komentar yang terdiri dari satu baris, menggunakan tanda minus dua kali (--). Sedangkan komentar yang terdiri dari lebih satu baris menggunakan simbol /* dan */ untuk mengawali dan mengakhiri komentar. Berikut contohnya :
-- komentar satu baris/* komentar lebih dari satu baris*/
BASIS DATA LANJUTDay-01
P1. Pemrograman dengan PL/SQL
![Page 24: [Database Boy] Praktikum 1 - Deklarasi Variabel & Pemrograman dengan PL/SQL](https://reader033.fdocuments.us/reader033/viewer/2022061321/55cf9766550346d033916bee/html5/thumbnails/24.jpg)
Fungsi SQL dalam PL/SQL
Sebagian besar fungsi SQL juga valid pada PL/SQL. Sedangkan fungsi yang hanya valid pada SQL tapi tidak pada PL/SQL adalah fungsi :• DECODE• Fungsi group seperti AVG, MIN, MAX, COUNT, SUM dll.
Contoh fungsi SQL dalam PL/SQL :• v_mailing_address := v_name || CHR(10) || v_address || CHR(10) || v_zip;• v_ename := LOWER(v_ename);
BASIS DATA LANJUTDay-01
P1. Pemrograman dengan PL/SQL
![Page 25: [Database Boy] Praktikum 1 - Deklarasi Variabel & Pemrograman dengan PL/SQL](https://reader033.fdocuments.us/reader033/viewer/2022061321/55cf9766550346d033916bee/html5/thumbnails/25.jpg)
Konversi Tipe Data
Fungsi untuk mengkonversi tipe data : TO_CHAR, TO_DATE dan TO_NUMBER. Contoh konversi tipe data :
BASIS DATA LANJUTDay-01
P1. Pemrograman dengan PL/SQL
![Page 26: [Database Boy] Praktikum 1 - Deklarasi Variabel & Pemrograman dengan PL/SQL](https://reader033.fdocuments.us/reader033/viewer/2022061321/55cf9766550346d033916bee/html5/thumbnails/26.jpg)
Blok Bersarang dan Ruang Lingkup Variabel
Blok dalam PL/SQL ditandai dengan BEGIN ….. END; Yang disebut dengan blok bersarang atau nested block adalah Blok (BEGIN … END;) yang terletak di dalam blok yang lain. Yang perlu diperhatikan dalam nested block adalah ruang lingkup variabel. Contoh ruang lingkup variabel dalam nested block :
BASIS DATA LANJUTDay-01
P1. Pemrograman dengan PL/SQL
![Page 27: [Database Boy] Praktikum 1 - Deklarasi Variabel & Pemrograman dengan PL/SQL](https://reader033.fdocuments.us/reader033/viewer/2022061321/55cf9766550346d033916bee/html5/thumbnails/27.jpg)
Penentuan Ruang Lingkup dengan <<...>>
Suatu blok dapat ditandai dengan menggunakan <<…>> untuk menentukan ruang lingkup dari suatu variabel. Seperti pada contoh berikut ini :
BASIS DATA LANJUTDay-01
P1. Pemrograman dengan PL/SQL
![Page 28: [Database Boy] Praktikum 1 - Deklarasi Variabel & Pemrograman dengan PL/SQL](https://reader033.fdocuments.us/reader033/viewer/2022061321/55cf9766550346d033916bee/html5/thumbnails/28.jpg)
Operator dalam PL/SQL
Macam-macam operator dalam PL/SQL :• Logika• Aritmatika• Concatenation (penyambungan)• Parantheses (kurang buka, tutup) untuk mengatur urutan dari suatu operasi• Eksponensial (**)
Contoh penggunaan operator dalam PL/SQL :• Menaikkan nilai counter :
v_count := v_count + 1;• Mencari nilai Boolean
v_equal := (v_n1 = v_n2);• Melakukan validasi apakah variabel nomor employee (v_empno) memiliki suatu nliai
v_valid := (v_empno IS NOT NULL);
BASIS DATA LANJUTDay-01
P1. Pemrograman dengan PL/SQL
![Page 29: [Database Boy] Praktikum 1 - Deklarasi Variabel & Pemrograman dengan PL/SQL](https://reader033.fdocuments.us/reader033/viewer/2022061321/55cf9766550346d033916bee/html5/thumbnails/29.jpg)
Ringkasan
• Telah dipelajari sintaks dari bagian-bagian PL/SQL• Memahami struktur blok PL/SQL dan blok bersarang (nested block)• Menggunakan identifier secara benar• Memahami aturan pada blok bersarang (nested block)• PL/SQL Programming :• Fungsi• Konversi tipe data• Operator
BASIS DATA LANJUTDay-01
P1. Pemrograman dengan PL/SQL
![Page 30: [Database Boy] Praktikum 1 - Deklarasi Variabel & Pemrograman dengan PL/SQL](https://reader033.fdocuments.us/reader033/viewer/2022061321/55cf9766550346d033916bee/html5/thumbnails/30.jpg)
Latihan Soal
1. Perhatikan kode PL/SQL berikut :
BASIS DATA LANJUTDay-01
P1. Pemrograman dengan PL/SQL
kemudian tentukan nilai dan tipe data dari variabel berikut ini :a. v_weight pada posisi 1b. v_newlocn pada posisi 1c. v_weight pada posisi 2 d. v_message pada posisi 2e. v_newlocn pada posisi 2
2 -> number
Western Europe -> varchar2
601 -> number
Product 10012 is in stock -> varchar2
Error -> varchar2
![Page 31: [Database Boy] Praktikum 1 - Deklarasi Variabel & Pemrograman dengan PL/SQL](https://reader033.fdocuments.us/reader033/viewer/2022061321/55cf9766550346d033916bee/html5/thumbnails/31.jpg)
Latihan Soal
2. Buat blok PL/SQL yang dapat menerima dua buah bilangan yang berasal dari dua variabel.
a. Gunakan perintah DEFINEb. Kemudian lewatkan dua nilai dari variabel yang didefinisikan dengan
perintah DEFINE tersebut ke blok PL/SQL yang menghitung nilai pembagian bilangan pertama dibagi bilangan kedua, hasilnya disimpan dalam suatu variabel yang akan ditampilkan dengan menggunakan DBMS_OUTPUT.PUT_LINE. Buat programnya !
BASIS DATA LANJUTDay-01
P1. Pemrograman dengan PL/SQL
![Page 32: [Database Boy] Praktikum 1 - Deklarasi Variabel & Pemrograman dengan PL/SQL](https://reader033.fdocuments.us/reader033/viewer/2022061321/55cf9766550346d033916bee/html5/thumbnails/32.jpg)
Sekian & Terima Kasih
spirited away by bottlewonderland
![Page 33: [Database Boy] Praktikum 1 - Deklarasi Variabel & Pemrograman dengan PL/SQL](https://reader033.fdocuments.us/reader033/viewer/2022061321/55cf9766550346d033916bee/html5/thumbnails/33.jpg)
Video yang lain.... Praktikum 2 Praktikum 3 Praktikum 4