nama dosen : pak hendro
===== Declaring Variabel ====
1...PL/SQL Block Structure
DECLARE (Optional)
Variables, cursors, user-defined exceptions
BEGIN (Mandatory)
– SQL statements
– PL/SQL statements
EXCEPTION (Optional)
Actions to perform when errors occur
END; (Mandatory)
Executing Statement and PL/SQL block
DECLARE
v_variable VARCHAR2(5);
BEGIN
SELECT column_name
INTO v_variable
FROM table_name;
EXCEPTION
WHEN exception_name THEN
...
END;
Block Type
- Anonymous Procedur
- [Declare] Procedur name is
---Statement --Statement
[Exception] [Exception]
End; End;
Function
Function name
Return datatype is
Begin
--statements
Return value;
[Exception]
End.
Variabel dapat digunakan untuk:
• Sementara penyimpanan data
• Manipulasi nilai-nilai yang tersimpan
• Usabilitas
• Kemudahan pemeliharaan
Penaganan Variabel pada PL/SQL
• Mendeklarasikan dan menginisialisasi variabel dalam deklarasi
bagian.
• Tetapkan nilai-nilai baru untuk variabel dalam executable
bagian.
• Lulus nilai ke dalam PL / SQL blok melalui
parameter.
• Lihat hasil melalui variabel output.
Type variabel
- PL/SQL Variabel
--Composite
--Reference
--LOB (Large Object)
- Non PL/SQL variabel : Bind and host variabel
Syntac : identifier [CONSTANT] datatype [NOT NULL]
[:= | DEFAULT expr];
Example :
DECLARE
v_hiredate DATE;
v_deptno NUMBER(2) NOT NULL := 10;
v_location VARCHAR2(13) := 'Atlanta';
c_comm CONSTANT NUMBER := 1400;
Naming Rules
-- Dua variabel dapat memiliki nama yang sama, asalkan mereka
berada dalam blok yang berbeda.
--Nama variabel (identifier) tidak harus sama
sebagai nama kolom tabel yang digunakan di blok tersebut.
Base Scalar Data Type
- Char
- Varchar2
- Long
- Long Raw
- Number
- Boolean
- Binary_integer dll
• Deklarasikan variabel menurut:
- Sebuah definisi database kolom
- Variabel lain yang sebelumnya dinyatakan
• Prefix% TYPE dengan:
- Tabel database dan kolom
- Nama variabel yang sebelumnya dinyatakan
Declaring Boolean Variables
--Hanya nilai TRUE, FALSE, dan NULL dapat
ditugaskan ke variabel Boolean.
--Variabel-variabel dibandingkan dengan logis
operator AND, OR, dan NOT.
-- Variabel-variabel selalu menghasilkan TRUE, FALSE, atau NULL.
--Aritmatika, karakter, dan tanggal ekspresi dapat
digunakan untuk mengembalikan nilai Boolean.
2...Writing Executable Statement
PL/SQL Block Syntax and Guidelines
Laporan dapat terus lebih dari beberapa baris.
• unit leksikal dapat diklasifikasikan sebagai:
- pembatas
- Identifier
- Literal
- Komentar
Identifier
Dapat berisi hingga 30 karakter
• Harus diawali dengan karakter abjad
• Dapat berisi angka, tanda-tanda dolar, garis bawah,
dan jumlah tanda-tanda
• Tidak dapat mengandung karakter seperti tanda hubung,
garis miring, dan ruang
• Sebaiknya tidak memiliki nama yang sama sebagai database
nama kolom tabel
• Sebaiknya tidak kata-kata dicadangkan
• Harus diawali dengan karakter abjad
• Dapat berisi angka, tanda-tanda dolar, garis bawah,
dan jumlah tanda-tanda
• Tidak dapat mengandung karakter seperti tanda hubung,
garis miring, dan ruang
• Sebaiknya tidak memiliki nama yang sama sebagai database
nama kolom tabel
• Sebaiknya tidak kata-kata dicadangkan
SQL Functions in PL//SQL
--Available in procedural statements:
– Single-row number
– Single-row character
– Data type conversion
– Date
– Timestamp
– GREATEST and LEAST
– Miscellaneous functions
– Single-row number
– Single-row character
– Data type conversion
– Date
– Timestamp
– GREATEST and LEAST
– Miscellaneous functions
-- Not available in procedural statements:
– Decode
– Group functions
– Decode
– Group functions
Nested Blocks and Variable Scope
PL / SQL blok dapat diulang dimanapun suatu
pernyataan dieksekusi diperbolehkan.
• Sebuah blok bersarang menjadi sebuah pernyataan.
• Sebuah bagian pengecualian dapat berisi blok bersarang.
• Ruang lingkup dari sebuah identifier adalah bahwa wilayah yang
program unit (blok, subprogram, atau paket)
dari mana Anda dapat referensi identifier.
pernyataan dieksekusi diperbolehkan.
• Sebuah blok bersarang menjadi sebuah pernyataan.
• Sebuah bagian pengecualian dapat berisi blok bersarang.
• Ruang lingkup dari sebuah identifier adalah bahwa wilayah yang
program unit (blok, subprogram, atau paket)
dari mana Anda dapat referensi identifier.
Identifier Scope
Suatu identifier adalah terlihat di daerah di mana Anda dapat
referensi pengenal tanpa harus memenuhi syarat:
• Blok A dapat terlihat sampai ke blok melampirkan.
• blok A tidak dapat melihat ke blok tertutup.
referensi pengenal tanpa harus memenuhi syarat:
• Blok A dapat terlihat sampai ke blok melampirkan.
• blok A tidak dapat melihat ke blok tertutup.
Operators in PL/SQL
• Logical
• Arithmetic
• Concatenation
• Parentheses to control order
of operations
• Exponential operator (**)
• Arithmetic
• Concatenation
• Parentheses to control order
of operations
• Exponential operator (**)
Programing Guidelines
Membuat pemeliharaan kode lebih mudah dengan:
• Mendokumentasikan kode dengan komentar
• Mengembangkan konvensi kasus untuk kode
• Mengembangkan konvensi penamaan untuk pengidentifikasi dan
benda lainnya
• Meningkatkan dibaca oleh Indentasi
• Mendokumentasikan kode dengan komentar
• Mengembangkan konvensi kasus untuk kode
• Mengembangkan konvensi penamaan untuk pengidentifikasi dan
benda lainnya
• Meningkatkan dibaca oleh Indentasi
Nama : Rika Nur Rahman
Nim : 09390100001
Tidak ada komentar:
Posting Komentar