Kamis, 06 Januari 2011

perbedaan sql plus - pl sql

PL/SQL
PL/SQL (Procedural Language/Structured Query Language) merupakan sebuah penggabungan antara bahasa pemrograman prosedural (PL) dan SQL syntax. PL/SQL adalah fasilitas yang disediakan Oracle sehingga pengguna dapat memanfaatkan konsep pemrograman. Dalam PL/SQL dapat digunakan perintah untuk memanipulasi data yang ada dalam database Oracle. PL/SQL membentuk pemrograman terstruktur dalam memproses data.
Beberapa kelebihan PL/SQL dalam database Oracle :
• PL/SQL dapat digunakan di server sehingga client hanya dapat mengakses didalam server.
• Penggunaan PL/SQL mudah dimengerti oleh setiap pengguna.
• PL/SQL dapat didesain khusus untuk database Oracle dalam menggunakan program aplikasi.
Aturan penulisan:
• Dapat ditulis dalam beberapa baris (tidak harus dalam satu baris perintah)
• Dapat berupa nested blok
• Karakter dan literal diapit oleh tanda kutip
• Setiap perintah/blok diakhiri dengan titik koma(;)
• Komentar diawali dengan tanda min dua kali(--) atau diapit dengan tanda /*…*/
• Pemberian nilai menggunakan :=
• Dapat menggunakan Bind Variable
• Tanda garis miring(/) berarti “run”
• STRUKTUR PL/SQL
• Struktur PL/SQL mirip dengan struktur bahasa pascal atau delphi yang menggunakan
• struktur blok, sehingga akan mempermudah pengertian dalam pemrograman dengan PL/SQL.
• Struktur Blok berisi perintah SQL dengan kondisi yang berbeda. Perintah PL/SQL dapat
• menangani kesalahan saat dijalankan. Setiap pengetikan dengan menggunakan PL/SQL
• dalam SQL*Plus selalu diakhiri dengan tanda /(slash). Sintaks penggunaan PL/SQL adalah
• sebagai berikut :
• Declare
• Begin
• Exception
• End
• Struktur diatas dapat dijelaskan sebagai berikut :
• 1. Bagian Judul (Header)
• Bagian ini hanya digunakan jika PL/SQL diberikan nama,misalnya untuk prosedur
• atau fungsi. Bagian ini berisi nama blok,daftar parameter, dan pengembalian hasil (return)
• jika blok adalahfungsi.
• 2. Bagian Deklarasi (declaration)
• Bagian ini untuk membuat deklarasi mengenai semua variable dan konstanta yang
• direferensikan dalam pernyataan PL/SQL. Bagian deklarasi ini dimulai dengan perintah
• DECLARE. Jika tidak ada variable atau konstanta yang ingin dideklarasikan bagian ini
• boleh dihilangkan, bersifat optional.
• 3. Bagian Eksekusi (Execution).
• Bagian ini memuat pernyataan-pernyataan PL/SQL yang akan ditulis. Bagian
• eksekusi ini harus dimulai dengan perintah BEGIN.
• 4. Bagian Perkecualian (Exception)
• Bagian ini memuat cara menangani kesalahan-kesalahan (error) pada waktu
• eksekusi program PL/SQL, bersifat optional. Jika program tidak memuat cara menangani
• kesalahan, bagian ini boleh dihilangkan.Setiap pernyataan PL/SQL harus diakhiri dengan
• tanda titik koma(;) dan semua program PL/SQL harus diakhiri dengan perintah END.
Bentuk Umum Struktur PL/SQL
DECLARE
variabel tipe_data;
konstanta CONSTANT tipe_data := nilai;
...
BEGIN
statement_1;
statement_2;
...
EXCEPTION
WHEN nama_eksepsi THEN statement_untuk_mengatasi_error;
...
END;
DBMS_OUTPUT merupakan paket yang disediakan oleh Oracle PL / SQL dan PUT_LINE merupakan salah satu prosedur yang dikemas. Menampilkan nilai-nilai pada SQL Plus * terminal yang harus diaktifkan dengan SERVEROUTPUT SET ON terlebih dahulu. Untuk menjalankan kode sampel ini, login ke SQL * Plus. PL / SQL blok diakhiri dengan tanda garis miring / atau garis byitself.
Tipe Data
a. Tipe Data dasar :
• Numerik
• NUMBER, BINARY_INTEGER, DEC, DOUBLE PRECISION, INTEGER, INT, NUMERIC, REAL, SMALLINT
• Karakter
• VARCHAR2, CHAR, LONG
• DATE
• BOOLEAN
• ROWID
b. Tipe Data tambahan : RECORD, ARRAY
Type data yang dapat dikenali dalam PL/SQL dapat berupa type data SQL dan type data seperti :
1. BOOLEAN
Dipakai untuk menyatakan data logika, yaitu TRUE(benar), FALSE(salah), dan NULL(kosong).
2. BINARY_INTEGER
Digunakan untuk mendeklarasikan bilangan yang tidak mempunyai angka desimal. Tipe dataNATURAL dan POSITIVE merupakan subset dariBINARY_INTEGER.
3. %TYPE
Tipe data ini dipakai untuk menandakan bahwa variabelyang deklarasikan sama dengan tipe data dari kolom tabel tertentu.
4. %ROWTYPE
Tipe data ini menandakan bahwa sekelompok variabel adalah sama dengan tipe data darirow suatu tabel tertentu.
5. Tabel dan Record
Tipe data komposit untuk pemakaian yang lebih kompleks.
VARIABEL
Adalah sebuah peubah yang digunakan untuk menampung sebuah nilai di memori komputer.
Bentuk Umum :
variable_name datatype [NOT NULL := value ];
Keterangan :
• Variable_name adalah nama variabel.
• Datatype adalah valid PL / SQL datatype.
• NOT NULL adalah sebuah spesifikasi opsional pada variabel.
• Nilai atau DEFAULT juga merupakan spesifikasi opsional, di mana anda bisa
menginisialisasi variabel.
• Setiap deklarasi variabel adalah pernyataan terpisah dan harus diakhiri dengan titik koma.
Contoh Deklarasi Variabel :
DECLARE
X integer;
Alamat varchar2(40);
No_induk char(8);
BEGIN
X := 12;
Alamat := ‘Gelatik Dalam 391, Bandung’;
No_induk := ‘DOG29549’;
END;
KONSTANTA
Digunakan untuk menyimpan sebuah nilai di memori komputer. Nilai yang disimpan bersifat
tetap (konstan)
Contoh Deklarasi Konstanta :
DECLARE
pi CONSTANT real := 3.14;
lebar CONSTANT integer := 100;
Perbedaan variabel dengan konstanta adalah :
• Konstanta
Nilai ditentukan pada saat deklarasi dibuat sehingga nilainya tetap pada saat
program dieksekusikan.
• Variabel
Dapat menerima nilai baru atau sebaliknya diubah pada saat program
dieksekusi.
CLUSTER DATABASE
Cluster Database menjelaskan SQL Database Schema digunakan oleh sistem Rocks.
Server MySQL gratis DBMS mengelola skema dalam database tunggal bernama cluster.
Database ini membentuk tulang punggung dari sistem Rocks, koordinasi tugas yang beragam
seperti kickstart, mengetik node, bangunan file konfigurasi, dan versioning.
Skema Relasional
1. Tabel
Sebuah subset dari metode Teknik Informasi (IE) notasi akan digunakan untuk
menggambarkan tabel database. kunci primer ditandai dengan asterisk (*), dan
kunci asing ditunjuk oleh (@). Upaya telah dilakukan untuk menjamin skema ini
setidaknya dalam Formulir Normal Kedua (2NF). Untuk setiap tabel, kami
menyajikan struktur diikuti dengan penjelasan tentang kolom tersebut.
2. Node
Menjelaskan node di cluster. Sebuah meja sentral dalam skema. Tabel node
memiliki satu baris untuk setiap node di cluster, termasuk frontend, menghitung,
dan jenis alat lainnya. Lokasi node di cluster fisik (yang terletak di rak di lantai)
ditentukan dalam tabel ini juga.
ID : Sebuah integer primary key identifier. Auto bertambah.
Name : Nama dari antarmuka jaringan pribadi untuk node ini. Ini melanggar
bentuk normal kedua (2NF) dari skema (nama ini hanya ada di dalam
tabel jaringan), tetapi berfungsi sebagai petunjuk untuk dibaca.
Membership : Sebuah link ke meja Keanggotaan; tidak dapat null. Menentukan
jenis node.
CPU : Jumlah Prosesor di node ini. Default adalah 1. Meskipun kolom ini
melanggar bentuk normal kedua, itu lebih berguna di sini daripada
dalam tabel terpisah.
Rack : Y-sumbu koordinat node ini dalam ruang euclidean. Zero adalah rak
paling kiri di lantai dengan konvensi. Catatan kita hanya
menggunakan 2D matriks untuk menemukan node, pesawat (Z-axis)
saat ini selalu nol.
Rank : X-axis ini node dalam ruang euclidean. Zero adalah terdekat ke
lantai (bagian bawah paling node) dengan konvensi.
IP : IPv4 alamat Internet Protocol ini node dalam desimal-dot notasi.
Field Type
ID* int(11)
Name varchar(128)
Membership@ int(11)
CPUs int(11)
Rack int(11)
Rank int(11)
Comment varchar(128)
3. Networks
Jaringan interface untuk simpul.
Field Type
ID* int(11)
Node@ int(11)
MAC varchar(32)
IP varchar(32)
Netmask varchar(32)
Gateway varchar(32)
Name varchar(128)
Device varchar(32)
Module varchar(128)
ID : Sebuah integer primary key identifier. Auto bertambah.
Node : Sebuah link ke meja node. Kunci asing, tidak bisa null.
MAC : Media 6-byte alamat Access Layer (Layer 2) dari interface ini dalam
notasi hex-usus seperti "a6: 45:34:0 f: 44:99".
IP : IPv4 alamat Internet Protocol antarmuka ini dalam desimal-dot notasi
seperti "10.255.255.254".
Netmask : Subnet mask dari alamat IP. Ditentukan seperti "255.0.0.0".
Gateway : IP gateway atau alamat router untuk interface ini.
Nama : Nama host untuk antarmuka jaringan. Konvensi Rocks adalah
"menghitung-[Rack] - [Rank]" untuk menghitung node.
Jika nama perangkat adalah "eth0" adalah ini "private" antarmuka
jaringan untuk node. Nama interface ditempatkan dalam domain.
Setempat dan dilayani melalui DNS. Semua nama host lainnya harus
benar-benar-kualifikasi.
Perangkat : Perangkat Linux nama untuk NIC ini. Antarmuka (primer) swasta
selalu memiliki nama "eth0".
Modul : Perangkat driver Linux nama untuk interface ini. Hardware tertentu.
4. App_Globals
Tabel ini berisi pasangan kunci = Nilai yang digunakan untuk layanan penting seperti
Kickstart. Contohnya termasuk layout keyboard, Public Gateway, Public Hostname,
server DNS, masker IP, Cluster Pemilik, Admin email, dll
ID : Sebuah integer primary key identifier. Auto bertambah.
Memebership: Kunci asing yang referensi kolom ID pada tabel Keanggotaan.
Service : Nama layanan yang akan menggunakan pasangan ini KUNCI = NILAI.
Contohnya adalah "Kickstart" dan "Info". Ini pada dasarnya adalah bagian pertama dari
skema penamaan dua tingkat.
Component :Nama kedua tingkat. Bersama Layanan dan nama Komponen sesuai
dengan atribut nama name="Service_Component"/> proses generasi kickstart.
Value : Nilai baris ini. Dapat berupa data tekstual.
5. Memebership
Tabel ini menentukan versi distribusi dan jenis alat untuk satu set node. Sebuah nama
Field Type
ID* int(11)
Membership@ int(11)
Service varchar(64)
Component varchar(64)
Value text
alternatif untuk tabel ini akan kelompok, namun adalah sebuah kata yang dicadangkan di
SQL. Nama tabel keanggotaan sekelompok node dalam cluster dan memungkinkan
keanggotaan ganda untuk mengikat ke satu jenis alat.
ID : Sebuah integer primary key identifier. Auto bertambah.
Node : Nama keanggotaan ini. Jenis node dalam cluster, seperti "Frontend", "Hitung",
"Power Unit" atau mirip. Perangkat lunak yang diinstal pada node dalam keanggotaan
diberikan didefinisikan oleh ID alat.
Appliance : Kunci asing yang referensi kolom ID pada tabel Tangga. Membantu
menentukan perangkat lunak yang diinstal pada node dalam keanggotaan ini, dan karena itu
perilaku mereka.
Distribution: Kunci asing yang referensi kolom ID pada tabel distribusi. Kunci kedua
digunakan untuk menentukan perangkat lunak untuk node dalam keanggotaan ini.
Compute: Entah "ya" atau "tidak". Menentukan apakah ini tipe node akan digunakan untuk
menjalankan pekerjaan paralel.
6. Appliances
Tabel ini mendefinisikan jenis alat yang tersedia. Setiap node dalam cluster dapat
mengklasifikasikan dirinya sebagai jenis alat tunggal. Grafik dan Node atribut menentukan
titik awal dalam grafik konfigurasi perangkat lunak Rocks (Lihat Grafik XML), yang
menentukan sepenuhnya perangkat lunak yang diinstal pada sebuah node.
Field Type
ID* int(11)
Name varchar(32)
ShortName varchar(32)
Graph varchar(64)
Node varchar(64)
Field Type
ID* int(11)
Name varchar(64)
Appliance@ int(11)
Distribution@ int(11)
Compute enum('yes','no')
ID : Sebuah integer primary key identifier. Auto bertambah.
Nama : Nama alat ini. Contohnya adalah "frontend" dan "menghitung".
Shortname : Sebuah julukan untuk alat ini.
Graph: Menentukan mana perangkat lunak grafik konfigurasi untuk digunakan saat membuat
berkas kickstart untuk alat ini. Default default umumnya digunakan.
Node : Menentukan nama dari simpul akar pada grafik konfigurasi untuk digunakan saat
membuat berkas kickstart untuk alat ini. paket perangkat lunak tersebut untuk jenis alat
sepenuhnya ditentukan oleh traversal dari awal grafik konfigurasi di node root.
7. Distribution
Tabel ini menghubungkan keanggotaan grup untuk distribusi Rocks berversi, dan memainkan
peran penting dalam proses pembangkitan Rocks kickstart. The Release berkaitan dengan
versi distribusi RedHat, misalnya "7.2", sedangkan Nama menentukan mana untuk
menemukan kedua pohon Rocks konfigurasi dan paket RPM.
Field Type
ID* int(11)
Name varchar(32)
Release varchar(32)
Lang varchar(32)
ID : Sebuah integer primary key identifier. Auto bertambah.
Nama : Menentukan mana untuk menemukan file-file konfigurasi grafik Rocks pohon.
Nama Bidang grafik konfigurasi terletak di / home / install / [Nama] / [Pers] / direktori.
Release : Memberikan distribusi RedHat versi ini pohon konfigurasi didasarkan pada,
misalnya "7.2". Bidang Rilis pada grafik lokasi "rumah / / install / [Nama] / [Pers] /"
direktori.
8. Version
Tabel ini dimaksudkan untuk memberikan skema database versioning. Hal ini disediakan
untuk penggunaan masa depan.
TableName : Nama tabel dalam database skema ini.
Major : Jumlah utama versi tabel ini. Biasanya bilangan bulat pertama dalam string
versi.
Minor : Nomor minor versi tabel ini. Integer kedua dalam versi string.
9. Aliases
Tabel ini berisi alias user-defined untuk node.
ID : Sebuah integer primary key identifier. Auto bertambah.
Node : Kunci asing yang referensi kolom ID pada tabel Nodes.
Name : Nama alias. Biasanya versi pendek dari nama host.
Field Type
TableName varchar(64)
Major int(11)
Minor int(11)
Field Type
ID* int(11)
Node@ int(11)
Name varchar(32)
LINK : (http://www.novapdf.com)

Tidak ada komentar:

Posting Komentar