Senin, 16 April 2012

PERCABANGAN Dalam PL/SQL Oracle


Setiap pembahasan materi PL/SQL Oracle selalu tidak dapat dipisahkan dengan pembahasan materi percabangan. Yang dimaksud dengan Percabangan adalah opsi atau pilihan yang didasarkan atas satu atau beberapa kondisi tertentu. Sebuah atau beberapa statemen akan di jalankan jika kondisi tersebut bernilai TRUE dan sebaliknya tidak akan dieksekusi jika kondisi tersebut tidak terpenuhi.
Secara umum di dalam PL/SQL Oracle, struktur percabangan dibagi menjadi 3 struktur, yaitu :
A. Struktur percabangan dengan satu kondisi
B. Struktur percabangan dengan dua kondisi
C. Struktur percabangan dengan tiga kondisi

Bentuk Umum Penulisan

Struktur percabangan dengan satu kondisi

IF kondisi THEN
      Statemen_1;
         ...
END IF;

Struktur percabangan dengan dua kondisi

IF kondisi THEN
      Statemen_1;
         ...
ELSE
      Statemen_2;
         ...
END IF;

Struktur percabangan dengan tiga kondisi atau lebih.

IF kondisi_1 THEN
      Statemen_1;
         ...
ELSIF kondisi 2 THEN
      Statemen_2;
         ...
ELSE
      Statemen_3;
         ...
END IF;


1. Contoh  percabangan dengan satu kondisi
    - Menentukan sebuah bilangan Bulat apakah termasuk kedalam bilangan 
      Genap atau Ganjil
-----------------------------------------------------------------------
SET SERVEROUTPUT ON
DECLARE
   BIL INTEGER := 100;
BEGIN
   IF MOD(BIL,2)=0 THEN
      DBMS_OUTPUT.PUT_LINE(TO_CHAR(BIL)|| ' adalah bilangan Genap');
   END IF;
END;

   - Menentukan bilangan terbesar dan terkecil dari sebuah bilangan bulat
-----------------------------------------------------------------------
SET SERVEROUTPUT ON
DECLARE
   bil_1  INTEGER;
   bil_2  INTEGER;
BEGIN
   bil_1 := 300;
    bil_2 := 200;
   
    IF bil_1 > bil_2 THEN
      DBMS_OUTPUT.PUT_LINE('Bilangan tebesar adalah : '|| TO_CHAR(bil_1)  
                                ||', terkecil adalah : ' || TO_CHAR(bil_2)); 
   END IF;
END;

2. Contoh  percabangan dengan dua kondisi
    - Menentukan sebuah bilangan Bulat apakah termasuk kedalam bilangan 
      Genap atau Ganjil
-----------------------------------------------------------------------
SET SERVEROUTPUT ON
DECLARE
   bil INTEGER := 99;
BEGIN
   IF MOD(bil,2)=0 THEN
       DBMS_OUTPUT.PUT_LINE(TO_CHAR(bil)|| ' adalah bilangan Genap');
   ELSE
       DBMS_OUTPUT.PUT_LINE(TO_CHAR(bil)|| ' adalah bilangan Ganjil');
   END IF;
END;

   - Menentukan bilangan terbesar dan terkecil dari sebuah bilangan bulat
-----------------------------------------------------------------------
SET SERVEROUTPUT ON
DECLARE
   bil_1  INTEGER;
   bil_2  INTEGER;
BEGIN
   bil_1 := 300;
   bil_2 := 200;
   
   IF bil_1 > bil_2 THEN
      DBMS_OUTPUT.PUT_LINE('Bilangan tebesar adalah : ' || TO_CHAR(bil_1)
                         ||', terkecil adalah : ' || TO_CHAR(bil_2)); 
   ELSE
    DBMS_OUTPUT.PUT_LINE('Bilangan tebesar adalah : ' || TO_CHAR(bil_2) 
                   ||', terkecil adalah : ' || TO_CHAR(bil_1));   
  END IF;
END;

3. Contoh  percabangan dengan Tiga kondisi
    - Menentukan sebuah bilangan Bulat apakah termasuk kedalam bilangan 
      Genap atau Ganjil
-----------------------------------------------------------------------
SET SERVEROUTPUT ON
DECLARE
   bil INTEGER := -9;
BEGIN
   IF MOD(bil,2)=0 THEN
       DBMS_OUTPUT.PUT_LINE(TO_CHAR(bil)|| ' adalah bilangan Genap');
   ELSIF MOD(bil,2)=1 THEN
       DBMS_OUTPUT.PUT_LINE(TO_CHAR(bil)|| ' adalah bilangan Ganjil');
   ELSE
       DBMS_OUTPUT.PUT_LINE('Bilangan tsb adalah Bilangan negatif');
   END IF;
END;
 
    - Menentukan bilangan terbesar dan terkecil dari sebuah bilangan bulat
-----------------------------------------------------------------------
SET SERVEROUTPUT ON
DECLARE
   bil_1  INTEGER;
   bil_2  INTEGER;
BEGIN
   bil_1 := 300;
   bil_2 := 200;
   
   IF bil_1 > bil_2 THEN
      DBMS_OUTPUT.PUT_LINE('Bilangan tebesar adalah : ' || TO_CHAR(bil_1)
                         ||', terkecil adalah : ' || TO_CHAR(bil_2)); 
   ELSIF bil_1 > bil_2 THEN
    DBMS_OUTPUT.PUT_LINE('Bilangan tebesar adalah : ' || TO_CHAR(bil_2) 
                    ||', terkecil adalah : ' || TO_CHAR(bil_1));
  ELSE
     DBMS_OUTPUT.PUT_LINE('Bilangan ke-1 dan 2 adlh sama yaitu : '||bil_1);
  END IF;
END;

Demikian sedikit sharing mengenai percabangan yang biasa digunakan pada PL/SQL Oracle.






Kamis, 12 April 2012

GusDur

Tulisannya bukan mengada2 ya tapi ya memang demikian. Dinegara NKRI ini mungkin perlu waktu 1 abad ini kita hanya punya 2 pemimpin yang sesungguhnya Cerdas, Berani dan Kharismatik itu Yaitu : IR. SOEKARNO DAN KH ABDURAHMAN WAHID. Secara genetis KH Abdurrahman Wahid merupakan keturunan darah biru. Darah biru bukan dalam arti kebangsawanan, melainkan bekal dari Allah Subhanahu Wataala berupa kecerdasan luar biasa.

Dia anak seorang tokoh besar umat Islam, khususnya NU. Ayahnya, KH Wahid Hasyim, anak pendiri Nahdlatul Ulama, organisasi Islam terbesar di Indonesia, bernama Hasyim Asy'ari. Ibunya, Hajjah Sholehah, juga keturunan tokoh besar NU, KH Bisri Sansuri.

Ayahnya menjadi Menteri Agama pertama Di Indonesia. Dengan demikian, baik dari garis ayah maupun ibu, Gus Dur merupakan sosok yang menempati strata sosial tinggi dalam masyarakat Indonesia. Namun, sejarah kehidupannya tak mencerminkan kehidupan seorang ningrat. Dia berproses dan hidup sebagaimana layaknya masyarakat kebanyakan. Gus Dur kecil belajar di pesantren. Dia diajar mengaji dan membaca Al Quran oleh kakeknya, Hasyim Asy'ari, di Pesantren Tebuireng, Jombang, Jatim.

Gus Dur juga aktif di pesantren menjadi sekretaris Pesantren Tebuireng, Jombang (1974-1979) dan menjadi konsultan di berbagai lembaga dan departemen pemerintahan pada tahun 1976. Selanjutnya, Gus Dur menjadi pengasuh Pondok Pesantren Ciganjur, Jakarta, sejak tahun 1976 hingga sekarang.

Di organisasi Nahdlatul Ulama, Gus Dur menjadi anggota Syuriah Nahdlatul Ulama tahun 1979-1984. Ia juga menjabat Ketua Tanfidziyah Pengurus Besar Nahdlatul Ulama (PBNU) untuk empat periode. Masing-masing 1984-1989, 1989-1994, dan 1994-1999, dan 2000-2005.

Sementara itu di bidang pemerintahan, Gus Dur pernah duduk, baik di lembaga legislatif maupun eksekutif. Ia menjadi anggota MPR dari utusan golongan selama dua periode. Masing-masing periode 1987-1992 dan 1999-2004. Karier politik tertingginya adalah menjadi Presiden RI selama 2 tahun pada 1999-2001.

Gus Dur dikenal sebagai tokoh kerukunan umat beragama, bahkan cukup kontroversial karena menjadi anggota Dewan Pendiri Shimon Peres Peace Center, Tel Aviv, Israel. Ia pernah menjadi Wakil Ketua Kelompok Tiga Agama, yaitu Islam, Kristen, dan Yahudi, yang dibentuk di Universitas Al Kala, Spanyol, serta Pendiri Forum 2000 (organisisasi yang mementingkan hubungan antaragama). Ia juga pernah menjabat Ketua Dewan Internasional Konferensi Dunia bagi Agama dan Perdamaian atau World Conference on Religion and Peace (WCRP), Italia, tahun 1994.

Gus Dur juga pernah menjadi Ketua Dewan Pimpinan Harian (DPH) Dewan Kesenian Jakarta Taman Ismail Marzuki (TIM) periode 1983-1985. Meski mengalami penurunan kemampuan melihat, Gus Dur dikenal masih suka membaca melalui suido book bahkan sampai menjelang akhir hayatnya. Ia juga dikenal produktif menulis artikel dan buku.

Begitu banyak Penghargaan yang di terima Beliau semasa Hidup antara lain :

* Tokoh 1990, Majalah Editor, tahun 1990
* Ramon Magsaysay Award for Community Leadership, Ramon Magsaysay Award Foundation, Philipina, tahun 1991
* Islamic Missionary Award from the Government of Egypt, tahun 1991
* Penghargaan Bina Ekatama, PKBI, tahun 1994
* Man Of The Year 1998, Majalah berita independent (REM), tahun 1998
* Honorary Degree in Public Administration and Policy Issues from the University of Twente, tahun 2000
* Gelar Doktor Kehormatan dari Universitas Jawaharlal Nehru, tahun 2000
* Doctor Honoris Causa dalam bidang Philosophy In Law dari Universitas Thammasat Thaprachan Bangkok, Thailand, Mei 2000
* Doctor Honoris Causa dari Universitas Paris I (Panthéon-Sorbonne) pada bidang ilmu hukum dan politik, ilmu ekonomi dan manajemen, dan ilmu humaniora,
  tahun 2000
* Penghargaan Kepemimpinan Global (The Global Leadership Award) dari Columbia University, September 2000
* Doctor Honoris Causa dari Asian Institute of Technology, Thailand, tahun 2000
* Ambassador for Peace, salah satu badan PBB, tahun 2001
* Doctor Honoris Causa dari Universitas Sokka, Jepang, tahun 2002
* Doctor Honoris Causa bidang hukum dari Konkuk University, Seoul Korea Selatan, 21 Maret 2003.
* Medals of Valor, sebuah penghargaan bagi personal yang gigih memperjuangkan pluralisme dan multikulturalisme, diberikan oleh Simon Wieshenthal Center   (yayasan yang bergerak di bidang penegakan HAM dan toleransi antarumat beragama), New York, 5 Maret 2009.
* Penghargaan nama Abdurrahman Wahid sebagai salah satu jurusan studi Agama di Temple University, Philadelphi, 5 Maret 2009.
* Dan penghargaan-penghargaan lainnya.

Semoga kita bisa belajar dari sejarah dan pemimpin bangsa ini untuk Indonesia yang lebih baik.

Love is Cinta



Dilihat dari judulnya sudah jelas ya pasti ngebahas tentang cinta. Tanpa cinta dunia pasti kacau balau dan yang ada semua tentang kesedihan, kekerasan dan perpecahan. Sedikit tulisan saya yang diambil dari salah satu Sufi dan penyair favorit saya. Ada beberapa buku yang saya punya mengenai penyair terbesar sepanjang masa ( Menurut saya sih..) sapa lagi kalo bukan JALALUDIN RUMI.

Berikut sedikit kutipannya dari syair dari Jalaludin Rumi

Cinta Adalah Realitas abadi
Tapi ia cenderung memudar dan menghilang
Karena manusia jatuh cinta pada pantulan cahaya sang kekasih.
Cinta sejati bergantung pada pemahaman
Pencinta harus mampu membedakan
Emas dari kilauannya. (Rumi)

Suatu hari seorang sufi perempuan bernama Rabiah al-adawiyyah berkata, "Siapa yang dapat menunjukan saya bertemu kepada Sang Kekasih ?" Pelayannya Menjawab, "Sang Kekasih bersama kita, tetapi dunia menghalangi kita bertemu dengan-NYA."

Ketika Samnun Berbicara tentang Cinta, Tiba – tiba seekor burung hinggap didepanya dan mematuk – matuk paruhnya ketanah terus – menerus hingga berdarah dan akhirnya terkapar mati.

Seorang Ahli ibadah berkata dalam tangis dan air mata yang bercucuran berkata Demi Alloh, aku sudah bosan hidup. Andai maut diperjual belikan, pasti sudah ku beli, demi cinta dan kerinduanku bertemu dengan-NYA..Lalu ada yang bertanya Apakah kau percaya dengan amal ibadahmu? “Ia menjawab, Tidak, aku hanya Mencintai-NYA,Berbaik sangka pada-NYA, Ku biarkan DIA Menyiksaku, yang penting aku mencintai-NYA

Hakikat makna cinta bersumber dari sang kekasih, Hati tak mampu menangkapnya
dan lidah tak mampu untuk mengungkapnya, Karena Cinta adalah Misteri dan kita
hanya manusia tak berdaya melawan takdir Sang Raja Manusia. (Cinta Adalah Misteri - Dewa19)

Semoga kita dapat pelajaran dari cerita diatas dan semoga kita jika beribadah kepada Alloh semata –mata karena Cinta kita Kepada-NYA..Amien

VARIABEL - OPERARTOR Pada PL/SQL Oracle


Muqadimah
PL/SQL adalah blok yang berisi skrips-skrips bahasa procedural. Dengan blok PL/SQL kita dapat menuliskan perintah-perintah seperti menuliskan perintah pada bahasa pemrograman procedural lainnya.
Dengan adanya PL/SQL, kita dapat meningkatkan performance dari database yang akan kita olah karena didukung oleh adanya bagian tipe data, struktur percabangan maupun struktur pengulangan.

Tipe Data, Variabel, dan Konstanta.

Tipe Data.
Secara umum didalam sebuah blok PL/SQL Oracle, tipe data dapat dibedakan menjadi lima yaitu: numeric, karakter, data, Boolean, dan rowed. Berikut ini list tipe data yang disediakan oleh Oracle.
Nama
Tipe
Keterangan
NUMBER
Numerik
Untuk semua tipe numerik
DEC
Numerik
Untuk bilangan desimal
DOUBLE PRECISION
Numerik
Untuk bilangan riil dgn presisi yg tinggi
INTEGER
Numerik
Untuk bilangan bulat
INT
Numerik
Untuk bilangan bulat
NUMERIC
Numerik
Sama dengan Number
REAL
Numerik
Sama dengan Number
SMALLINT
Numerik
Untuk bilangan bulat dgn rentang yg kecil
VARCHAR2
Karakter
Untuk string dgn panjang yg dinamis sesuai dgn panjang maksimal yg ditentukan
CHAR
Karakter
Untuk string dgn panjang yg sudah pasti.
LONG
Karakter
Untuk string dgn lebar diatas 32.767 byte
DATE
Tanggal
Untuk tipe tanggal
BOOLEAN
Boolean
Bernilai TRUE (benar) dan FALSE (salah)
ROWID
Rowid
Untuk tipe rowed.
  
Variabel
Seperti pada bahasa pemrograman lainnya, variabel berfungsi untuk menampung sebuah nilai di memori komputer. Nilai tsb dapat dirubah setiap saat jika diperlukan. Tipe data tsb harus sesuai dengan nilai yang akan ditampung. Agar sebuah variabel dapat digunakan didalam sebuah blok, maka ia harus dideklarasikan. Cara mendeklarasikan variabel adalah seperti berikut ini :

DECLARE
   nama  varchar2(50);
   id    number;

Konstanta

Sama halnya seperti Variabel, kegunaan konstanta adalah untuk menyimpan sebuah nilai di memori komputer. Perbedaan yang paling mendasar dari keduanya adalah dari sifat data yang akan disimpan. Pada variabel, nilai yang akan disimpan bersifat fleksibel artinya dapat diubah-ubah. Sedangkan pada konstanta bersifat tetap atau statis. Cara mendeklarasikan juga sama seperti pada variabel. Perhatikan berikut ini :

DECLARE
   Pi       CONSTANT real:=3.14;;
   lebar    CONSTANT integer:= 100;

Komentar pada Blok PL/SQL
Contoh :

/* Skript Update Pelanggan */  Berlaku untuk satu baris atau lebih
  
   atau
  
-- Skript Update Pelanggan  Berlaku untuk satu baris
  

Struktur Blok PL/SQL
Secara umum blok PL/SQL Oracle dibagi menjadi tiga bagian yaitu :
- Bagian deklarasi tipe data
- Bagian statement atau perintah yang akan dieksekusi
- Bagian Eksepsi (untuk menangani error)

DECLARE
   variabel   tipe_data;
   konstanta  constant tipe_date:=nilai;
   ...
   ...
BEGIN
   Statemen_1;
   Statemen_2;
   ...
   ...
EXCEPTION
   WHEN nama_eksepsi THEN
        Statemen_untuk_mengatasi_error;
   ...
END;


Perhatikan contoh dibawah ini :

SET SERVEROUTPUT ON

BEGIN
  DBMS_OUTPUT.PUT_LINE('Sukses bersama ORACLE....!');
END;

Atau,

SET SERVEROUTPUT ON
DECLARE
   teks VARCHAR2(50);
BEGIN
   teks := 'Sukses bersama ORACLE...!';
   DBMS_OUTPUT.PUT_LINE(teks);
END;
/

SET SERVEROUTPUT ON
DECLARE
   teks VARCHAR2(5);
BEGIN
   teks := 'Sukses bersama ORACLE...!';
   DBMS_OUTPUT.PUT_LINE(teks);
EXCEPTION
   WHEN VALUE_ERROR THEN
        DBMS_OUTPUT.PUT_LINE('Pesan Error : Kesalahan pada panjang karakter..');
       
END;
/

OPERATOR

Istilah yg sering kita dengar jika menggunakan Oracle.

X:=9*11;

maka :
  X           disebut Variabel
  :=          disebut operator assigment
  9 dan 11    disebut operand
  9*6         disebut ekspresi
  *           disebut operator aritmatika
  X:=9*11;    disebut statemen aritmatika


Operator yang kita kenal di Oracle ada beberapa yaitu :
1. Operator Logika : AND, OR, NOT
2. Operator Aritmatika : +, -, *, /, MOD
3. Operator Relational : <, <=, >, >=
4. Operator Persamaan : =, <>
5. Operator Penggabungan : ||

Contoh penggunaan Operator :

SET SERVEROUTPUT ON
DECLARE
   x    number;
   y    number;
   z    number;
   xx   number;
   teks varchar2(100);
BEGIN
   x:=11*9;
   y:=9+11;
   z:=100-10;
   xx:= x MOD 2;
  
   teks := 'Nilai xx sama dgn = ';
   DBMS_OUTPUT.PUT_LINE(teks|| TO_CHAR(xx));
       
END;
/


Sekian dulu semoga bermanfaat dan silakan dicoba pada oraclenya, klo gw sih biasanya pake Toad lebih powerfull. :D

Kopi dan Teh

Pagi, siang dan malem begitulah setiap hari kita lalui. Tapi pasti setiap waktu tersebut ada sesuatu yang kurang jika kita lalui tanpa minum kopi ataupun teh (benerkan..) hehehe, Walaupun pasti disini banyak juga penggemar susu (No Caffein katanya). Tradisi minum teh atupun kopi kira-kira ribuan tahun yang lalu kali ya (semoga bener). Dsini saya mencoba caritau manfaat dari teh maupun kopi. Teh selain memiliki kandungan anti oksidan yang baik bagi tubuh untuk menangkal radikal bebas, teh juga memiliki kandungan vitamin A, C dan E yang baik bagi tubuh. Itu dulu ya sekilas tentang teh nti bisa ditambahkan pada comment.

Selanjutnya saya akan membahas manfaat kopi bagi tubuh. Banyak juga pertanyaan mengenai kopi, misalnya kopi bikin susah tidur bikin jatung berdebar dan banyak lagi..(Mungkin ada benernya kali ya..Piss). Oiya malah nulisnya ngalor ngidul, hehehe, kopi bermanfaat mencegah pikun, mengurangi resiko diabetes, meredakan sakit kepala dan juga tombo nguantuk alias temen begadang.

Oke segitu dlu pren bahasan tentang kopi dan tehnya walaupun saya udah hampir 2 minggu gak ngopi karena lambung sedang bermasalah..

Rabu, 11 April 2012

Fix You

Sekedar Sharing aja ya kawan mengenai lagu Fix You dari Group Band ColdPlay (Pasti udah pada tau kan..). Sebenernya isinya sangat inspiratif agar kita gak gampang menyerah dalam keadaan apapun, baik sedang terpuruk dan hancur-hancuran sekalipun, kita harus berani dan siap untuk berbenah diri..
Berikut isi dari lirik lagu Fix You.

When you try your best, but you don't succeed
When you get what you want, but not what you need
When you feel so tired, but you can't sleep
Stuck in reverse
When the tears come streaming down your face
When you lose something you can't replace
When you love someone, but it goes to waste
Could it be worse?

Lights will guide you home
And ignite your bones
And I will try to fix you

High up above or down below
When you too in love to let it go
If you never try you will never know
Just what your worth

Lights will guide you home
And ignite your bones
And I will try to fix you

Tears stream down your face
When you lose something you cannot replace
Tears stream down on your face
And I..

Tears stream down your face
I promise you I will learn from my mistakes
Tears stream down on your face
And I..

Lights will guide you home
And ignite your bones
And I will try to fix you.

Silakan disimak dan renungkan ya kawan...

Belajar Oracle Menyenangkan..(Cool)

Hello semua, Perkenalkan nama saya Yogi Muharmaji, Biasa dipanggil (Yogi-Gie-Yo). Disini saya akan sedikit sharing mengenai Software Oracle. Oracle merupakan salah satu software RDBMS (relational database management system) yang cukup banyak digunakan.

Lansung saja dsini saya akan memperkenalkan dasar-dasar Query Sql. Disini saya tulis 3 opsi :
1. SQL Statement tidak bersifat case sensitive.
2. SQL Statement selalu diakhiri dengan sebuah semicolon ( ; ).
3. Pada environment SQL*Plus, SQL Statement diakhiri denga menuliskan tanda  slash (/).

Statement data dalam query SQL :
1. Statement DDL (Data Definition Language) : Create, Alter, Drop, Rename, Truncate, Set, Transaction, Commit, Rollback, SavePoint.

2. Statement DML (Data Manipulation Language) : Select, Insert, Delete, Update.

3. Statement DCL (Data Control Language) : Grant, Revoke.


Sekian dlu prenn sedikit sharingnya.