Showing posts with label SQL. Show all posts
Showing posts with label SQL. Show all posts

Wednesday, May 30, 2012

DDL dalam SQL

Haloo............... kembali menulis lagi nih mumpung lagi seneng" nya share :D.
langsung aja ya ke topik, jadi disini saya mw share DDL dalam SQL, tapi g share semuanya karena banyak jadi ambil yang paling penting dan paling banyak digunain aja yaa...

yang pertama cara buat tabel beserta constraint nya.. kita coba buat tabel pegawai ( asumsi tabel yang lain itu ada dan telah dibuat) dengan ketentuan
employee_id : number(6) primary key
name : varchar(20) not null
email : varchar(25) unique
phone_number : varchar(20) unique
hire_data : date not null,
salary : number(8) check>0
commision_pct : number (2) dengan precision 2
job_id : varchar(10) foreign key dari tabel jobs
department_id : number(4) foreign key dari tabel departments
manager_id : number(6) foreign key dari tabel employees(employee_id) --> buat jadi self join

nih ini sintaks nya: ( ingat asumsi tabel seperti jobs dan departments sudah ada)


create table employees(
employee_id number(6) constraint pk_employee primary key,
name varchar2(20) not null,
email varchar2(25) constraint unique_email unique,
phone_number varchar(20) constraint unique_phone unique,
hire_data date not null,
salary number(8) constraint check_salary check(salary>0),
commision_pct number(2,2) ,
job_id varchar2(10),
department_id number(4),
manager_id number(6),
constraint fk_job foreign key (job_id) references jobs on delete cascade,
constraint fk_dept foreign key (department_id) references departments on delete cascade,
constraint fk_manager foreign key (manajer_id) references employees(employee_id) on delete cascade
);

secara garis besar sintaks di atas sudah menjelaskan sebagian besar materi dll.

semisalnya tabel di atas mau di drop tinggal ketik
drop table employees;

semisalnya lagi kalau tabel diatas tersebut ada yg mau kita ubah atau atur lagi kolom" nya
untuk add kolom:
alter table employee tgl_lahir date;

untuk modify tipe data:
alter table employee modify name varchar2(50) not null;

untuk menghapus kolom:
drop table employee
drop column tgl_lahir;

atau mungkin mau merubah nama tabel / rename nama tabel :
rename employees to pegawai;

atau yang terakhir mau menghapus semua data dari tabel dengan truncate :
truncate employees;

nah mungkin ini saja yang bisa saya share :) , sekian terima kasih

Tuesday, April 10, 2012

Memahami PL/SQL

PL/SQL (Procedural Language/Structure Query language) merupakan bahasa yang menggabungkan antara kekuatan dan fleksibilitas SQL/non prosedural dengan bentuk bentuk prosedural.

pada PL/SQL kamu dapat menuliskan perintah perintah, seperti halnya pendeklarasian variabel, statement kondisional (if then else) pengulangan(loop), dsb. PL/SQL tidak mendukung data definition language(DDL) seperti create table, alter table atau drop table, selain itu juga mendukung data control language(DCL) seperti grant atau revoke.
beberapa karakteristik dari PL/SQL, antara lain:
  1. user friendly
  2. bahasa standard dan portabel dalam pengembangan oracle
  3. meruakan bahasa bawaan dari oracle yang berarti PL/SQL dapat dieksekusi di host maupun client
  4. integritas yang tinggi.
bentuk lain dari blok PL/SQL :
  • Anonymous Block : merupakan blok PL/SQL yang tidak bernama, tidak dapat disimpan dalam database dan biasanya dibangun secara dinamik dan dieksekusi hanya sekali.
  • Named Block : merupakan anonymous block dengan label yang diberi nama. named blok dapat dibagi menjadi :
    •  Subprograms : merupakan procedure, paket, dan fungsi" yang disimpan di dabtase. Blok-blok seperti ini dapat digunakan berulang kali dan dieksekusi secara explisit melalui call (pemanggilan prosedur, paket atau fungsi tersebut).
    • Triggers : merupakan named blocks yang juga disimpan di database. Blok ini dapat digunakan berulang kali dan dieksekusi secara implisit dimanapun event trigger terjadi
Structure blok PL/SQL
  1. Declaration Section : mendefinisikan/mendeklarasikan variable,konstanta,cursor.
  2. Excutable Section : mengeksekusi/menjalankan blok perintah PL/SQL.
  3. Exception Section : bagian yang diaktifkan bila terjadi kesalahan atau pengecualian pada saat menjalankan program PL/SQL.
 Exception Dasar
Jenis Error dengan keterangan
  • Syntax Error : kesalahan dalam penulisan sintaks. Misal kurang tanda';' dalam penulisan statement.
  • Logic Error : loop yang tanpa berhenti.
  • Compile error : penggunaan peintah yang salah dan baru diketahui pada saat di-compile.
  • Runtitem Error : error yang terjadi pada saat program dijalankan.