PL / SQL. Arif Basofi

dokumen-dokumen yang mirip
Bab 5. Database Trigger POKOK BAHASAN: TUJUAN BELAJAR: 5.1. PENDAHULUAN

Database Interfaces. By: Arif Basofi

5/6/2010 KONSTRUK PROGRAM PL/SQL PROSEDUR STRUKTUR BLOK PADA BLOK ANONIM PL/SQL OVERVIEW MENGENAI SUBPROGRAM STRUKTUR BLOK PADA SUBPROGRAM PL/SQL

PRAKTIKUM BASIS DATA TERDISTRIBUSI MODUL 4 SINKRONISASI DATA

TUGAS BASIS DATA LANJUT

BAB VIII FUNGSI, PL/PGSQL dan TRIGER

Praktikum TRIGGER. Tujuan :

Basis Data 2. Procedure dan Function Database. Arif Basofi, S.Kom. MT. Teknik Informatika, PENS

BAB 2 Membuat dan Menjalankan Form dengan Single Block

Pertemuan I KONSEP DASAR STORED ROUTINES

Modul Pembangunan Aplikasi Basis Data Lanjut 2014

BAB 6 PROGRAM UNITS DAN STRORED PROGRAMS UNITS

Pengenalan PL/SQL. Pertemuan 3

Modul 6 Function dan Trigger

VIEW OR STORED PROCEDURE

BAB 2 : Deklarasi Variabel

Pertemuan VII TRIGGERS

Pengertian. Mengapa SP? Mengapa SP? 07/05/2012 STORED PROCEDURE

IMPLEMENTASI TRIGGER, STORED PROCEDURE, FUNCTION DAN VIEW PADA MYSQL DALAM PERANCANGAN SYSTEM INVENTORY CAFFE BOULEVARD JAYAPURA

MODUL VII STORED PROCEDURE

Computer Science, University of Brawijaya. Putra Pandu Adikara, S.Kom. Trigger. Basis Data 2

Constraint dan Manajemen Data dalam Timezone Berbeda

Pertemuan VI F U N C T I O N

Pertemuan IV CONDITION & HANDLER CURSOR

Basis Data II. Pertemuan Ke-9 dan ke-10 (Stored Procedure dan Trigger) Noor Ifada S1 T. Informatika - UTM (2012) 1

BAB 4 MEMBUAT LIST OF VALUE (LOV) DAN NON-BASE TABLE FIELDS

APLIKASI KONVERSI FLOWCHART KE KODE PROGRAM BAHASA PEMROGRAMAN PL/SQL MYSQL

Obyek pada Oracle. Manajemen Obyek Basis Data dan Dictionary View. Obyek pada Oracle adalah segala hal yang bisa dibuat di Oracle, seperti:

Transaction dan Trigger. M. Saefudin SKom, MMSI

Praktikum MONITORING AND RESOLVING LOCK CONFLICTS. Tujuan :

Identitas dosen POKOK BAHASAN. mendemonstrasikan tentang membuat project aplikasi dengan database access dengan benar (C3) Suherman,, ST Address

Perangkat Lunak Manajemen Subprogram Untuk Oracle 11G

Praktikum Basis Data 2017 TE UM MODUL 8 TRIGGER A. TUJUAN

Kontrak Kuliah. Stored Procedures and Function. Edi Sugiarto, S.Kom, M.Kom

Eksekusi file setup.exe yang ada dalam CD atau folder instalasi oracle.

BAB III ANALISIS DAN PERANCANGAN

Transact-SQL (Trigger- Event, Store Procedure)

5. Database MySQL. Apa Database MySQL Itu? Hirarki Dalam Database. Table

Writting Procedure and Function

Keamanan Database Oracle. By: Arif Basofii

Mengelola Data. Oleh: Arif Basofi

INTEGRITAS BASIS DATA. OLEH : Slamet Sn Wibowo Wicaksono

BAB 1 PEMBUATAN REPORT

BAB 4 : Interaksi PL/SQL dengan Oracle Server

PRAKTIKUM PL/SQL (Trigger) OLEH : WIRATMOKO YUWONO, ST

Instalasi RazorSQL pada Debian Wheezy

Tutorial Database Oracle Chapter2 Pembuatan User dan Kontrol Hak Akses

Pemrograman Basis Data dan SQL

Tabel 1. Instruksi untuk menampilkan teks No. Bahasa Pemrograman Instruksi 1. Pascal WRITE ( Bahasa pemrograman itu mudah );

Bahasa Query dan 4GL. Leo kumoro sakti. Abstrak. Pendahuluan

PRAKTIKUM BASIS DATA TERDISTRIBUSI MODUL 2 PEMBUATAN DATABASE LINK (HOMOGENOUS SERVICE)

CONSTRAINT clients_client_num_pk PRIMARY KEY (client_number));

Cara Membuat Trigger di MySQL

PRAKTIKUM BASIS DATA TERDISTRIBUSI MODUL 4 SINKRONISASI DATA

@Tessy Badriyah, SKom. MT. PERTEMUAN 12 VIEW

VI. FUNGSI. Fungsi Main ( ) Fungsi a ( ) Fungsi b ( ) Fungsi c ( ) Fungsi c1 ( ) Fungsi c2 ( ) Fungsi c3 ( ) Bentuk umumnya :

DASAR-DASAR SQL SERVER 2005

Stored Procedure (create, calling SP dari Oracle dan dari JAVA)

SEQUENCE DAN INDEX. Contoh: CREATE SEQUENCE dept_deptid_seq INCREMENT BY 10 START WITH 120 MAXVALUE 9999 NOCACHE NOCYCLE;

DATABASE ADMINISTRATOR

Pemrograman Berorientasi Obyek Lanjut (IT251) Ramos Somya, S.Kom., M.Cs.

Oracle Academic Initiative

Arsitektur Aplikasi Perangkat Enterprise JDBC. Antonius Rachmat C, S.Kom, M.Cs

B a s i s D a t a. Tatap MUka. SQL Query & Agregate Function. Arif Basofi PENS

1 TEKNOLOGI OBJECT-RELATIONAL DBMS pada ORACLE 10g

1.1 Mengenal Visual Basic (VB) 1.2 Mengenal Integrated Development Environment (IDE) VB 6

BAB I TUJUAN DAN LANDASAN TEORI

MODUL VII STORED PROCEDURE

Tutorial Store Procedure dan Function dengan Database MySQL dan Bahasa Pemrograman C#.NET

MODUL 3. View PRAKTIKUM BASIS DATA LANJUT TEKNIK PERANGKAT LUNAK UNIVERSITAS PGRI RONGGOLAWE

SUBQUERY SKALAR DAN TEKNOLOGI CACHING PADA ORACLE DATABASE. Iwan Tanto

SISTEM BASIS DATA By Novareza Klifartha

PRAKTIKUM BASIS DATA TERDISTRIBUSI MODUL 2 PEMBUATAN DATABASE LINK (HOMOGENOUS SERVICE)

Contoh 3.1: Membuat suatu store procedure supaya menghapus semua pertandingan pemain berdasarkan nomor pemain yang ditentukan.

BAB II. KAJIAN PUSTAKA

Programming Language Bahasa Pemrograman

TUGAS KELOMPOK SECURITY COMPUTER TOOL HACKING SQL INJECTION

Kontrak Kuliah. Trigger dan Scheduled Events. Edi Sugiarto, S.Kom, M.Kom

Rencana Pelaksanaan Pembelajaran

TRIGGER TRIGGER 5/29/2017 HANI IRMAYANTI, S.KOM

Stored Procedure (create, calling SP dari Oracle dan dari JAVA)

Langkah-Langkah Pemrograman JDBC MENGIMPOR PACKAGE JAVA.SQL MEMANGGIL DRIVER JDBC

Stored Procedure. M. Saefudin SKom, MMSI

B a s i s D a t a C H A P T E R. SQL Operasi DDL. Arif Basofi PENS 2015

Praktikum TRANSACT SQL. Tujuan : Praktikan mampu untuk mengerti dan memahami Transact-SQL

VIEW : Tabel Virtual VIEW 5/29/2017

PERTEMUAN 2 LANJUTAN PERANCANGAN DATABASE DAN DBMS

Mengenal MySQL Stored Procedure

PROSEDUR & PARAMETER PROSEDUR

DUKUNGAN DATABASE DALAM PEMBANGUNAN SISTEM INFORMASI

Praktikum STORED PROGRAM. Tujuan :

MODUL 1 DATABASE MYSQL

Membuat Function, Stored Procedur dan View pada MySQL

Implementasi OOP Pada Perangkat Lunak Pemrograman

STORE PROCEDURE. Pemrograman Client Server Sarji, S.Kom Studi kasus pada

B a s i s D a t a C H A P T E R. SQL Operasi DML. Arif Basofi PENS 2015

Transkripsi:

PL / SQL Arif Basofi

Topik Identifikasi obyek PL/SQL Trigger dan event trigger Identifikasi konfigurasi untuk performance PL/SQL 9-2

PL/SQL Procedural Language/Structured Query Language (PL/SQL) adalah generasi ke-4 (4GL:Fourth Generation Languages) dari bahasa pemrograman. PL/SQL menyediakan: Tambahan penggunaan prosedur pada SQL Kemudahan untuk digunakan secara lintas platform dan produk Mendukung pemrograman berorientasi obyek 9-3

Melakukan administrasi obyek 2 PL/SQL Administrator database diharapkan punya kemampuan untuk: Mengidentifikasi permasalahan obyek PL/SQL Merekomendasikan penggunaan PL/SQL yang tepat Memasukkan objek PL/SQL ke dalam database Membantu developer PL/SQL dalam troubleshooting 9-4

Obyek-Obyek PL/SQL Ada beberapa tipe dari obyek-obyek PL/SQL dalam database, yaitu: Package Kumpulan dari prosedur dan fungsi yang terelasi secara logic. Package body Body secara penuh mendefinisikan kursor dan subprogram. Type body Kumpulan dari method-method (prosedur-prosedur dan fungsi-fungsi) yang berhubungan dengan tipe data user-defined. Procedure Sebuah blok PL/SQL yang melakukan aksi khusus. Function Blok PL/SQL yang mengembalikan nilai tunggal dengan menggunakan perintah PL/SQL RETURN. Trigger Blok PL/SQL yang dieksekusi ketika terjadi sebuah kejadian/event tertentu di dalam database. 9-5

Functions Fungsi digunakan untuk menghitung sebuah nilai. Terdapat beberapa fungsi built-in spt: SYSDATE, SUM, AVG, dan TO_DATE. Developer juga membuat fungsi utk kebutuhan sendiri ketika menulis aplikasi. Fungsi PL/SQL harus mengandung pernyataan RETURN. Contoh fungsi dalam SQL: CREATE OR REPLACE FUNCTION computetax (salary NUMBER) RETURN NUMBER AS BEGIN IF salary<5000 THEN RETURN salary*.15; ELSE RETURN salary*.33; END IF END; / 9-6

Procedures Prosedur digunakan untuk melakukan sebuah aksi khusus. Prosedur: Memindah nilai ke dalam (IN) dan keluar (OUT) melalui sebuah daftar argumen. Dipanggil dengan perintah CALL. SQL> SELECT sum(salary) FROM hr.employees; SUM(SALARY) ---------------- 691400 SQL> call giveraise(); Call completed. SQL> SELECT sum(salary) FROM hr.employees; SUM(SALARY) ---------------- 725970 9-7

Packages Packages adalah kumpulan dari fungsi dan prosedur. Tiap package harus terdiri dari dua obyek: Package Specification (package header) Package Body Cara memanggil: package_name.procedure or function name Cara eksekusi: SQL> SELECT money.computetax(salary) FROM hr.employees WHERE employee_id=107; 9-8 SQL> EXECUTE money.giveraise; Package Specification : merupakan antarmuka terhadap aplikasi-aplikasi kita; ia mendeklarasikan types, variables, constants, exceptions, cursors, dan subprograms yang tersedia untuk digunakan (package header).

Package Body Package Body adalah Body secara penuh mendefinisikan cursors dan subprograms, dan juga mengimplementasikan spec. 9-9

Built-In Packages Database Oracle 10g mempunyai lebih dari 350 paket PL/SQL built-in yang menyediakan: Utiliti untuk administrasi dan pemeliharaan Fungsi untuk pengembangan Gunakan perintah DESCRIBE untuk menampilkan subprogram 9-10

Triggers Trigger : blok PL/SQL atau prosedur yang berhubungan dengan table, view, skema atau database yang dijalankan secara implicit pada saat terjadi sebuah event. Tipe dari trigger : Application trigger : diaktifkan pada saat terjadi event yang berhubungan dengan sebuah aplikasi Database trigger : diaktifkan pada saat terjadi event yang berhubungan dengan data (seperti operasi DML) atau event yang berhubungan dengan sistem (semisal logon atau shutdown) yang terjadi pada sebuah skema atau database. 9-11

Option Konfigurasi PL/SQL Ada beberapa setting dari compiler PL/SQL yang mengontrol performa kinerja PL/SQL. Untuk performa lebih cepat, dapat dilakukan pengaturan parameter: PLSQL_CODE_TYPE=NATIVE PL/SQL yang sudah dikompile dpt disimpan dgn 2 cara: sbg interpreted bytecode atau sbg native machine code. Defaultnya, interpreted bytecode menyediakan fitur debugging yang lebih baik untuk pengembangan. Native machine code menyediakan kinerja run-time terbaik, sampai dengan dua kali kecepatan interpreted bytecode. PLSQL_DEBUG=FALSE Seting default FALSE mematikan fitur debugging lebih lanjut. PLSQL_OPTIMIZE_MODE=2 Seting default 1 menyediakan kinerja kompiler yang optimal, jika diset 2 berarti menyediakan kinerja run-time yang lebih baik tetapi menurunkan kinerja kompiler. PLSQL_WARNING=DISABLE:ALL Dengan menyeting DISABLE : ALL disable pesan peringatan dari kompiler PL/SQL dan memberikan kinerja terbaik. 9-12

Latihan Buat Laporan Tugas untuk soal berikut: 1. Buat sistem database peminjaman buku, lalu berikan beberapa trigger database pada event: penambahan/perubahan data hanya terjadi pada jam kerja (jam 08.00-17.00), tampilkan pesan warning. mencatat semua user yang melakukan penambahan/perubahan data pada table buku. pengecekan jika buku yang dipinjam tidak tersedia/sedang dipinjam, tampilkan pesan. 2. Buat trigger yang mengupdate stok buku berupa pesan "Buku tidak tersedia", jika stok buku habis/sedang dipinjam. 9-13