Kamis, 05 Januari 2012

Manajemen Resiko

Manajemen Proyek adalah sebuah usaha atau kegiatan untuk menghindari, meminimalisir dan memitigasi resiko proyek. Manajer proyek beserta tim proyek harus secara proaktif mendeteksi setiap risiko yang mungkin. Hal ini dapat dilakukan dengan cara menentukan agenda rutin untuk melakukan pertemuan untuk mendiskusikan isu-isu, mengidentifikasi resiko dan dampak dari suatu permasalahan tersebut. Manajer proyek harus merencanakan rencana kontingensi (contingency plan) atau rencana alternatif untuk menghadapi suatu resiko.
Hal-hal yang perlu diperhatikan dalam Manajemen resiko adalah perencanaan manajemen resiko, identifikasi resiko, menyelesaikan analisis resiko, menciptakan rencana resiko beserta tindakan penanganan, serta pemantauan dan pengendalian resiko pada proyek. Manajemen Resiko Proyek adalah proses berkesinambungan untuk keseluruhan proyek. Hal penting yang harus diingat adalah bahwa resiko tidak selalu buruk. Ada peluang dan ada ancaman. Kesempatan adalah resiko yang baik. Memperlakukan adalah resiko buruk. Tujuan dari manajemen resiko proyek adalah untuk meningkatkan kemungkinan dan dampak peristiwa positif dan untuk mengurangi probabilitas dan dampak dari kejadian negatif. Proses manajemen resiko ada enam:

1.      Perencanaan Manajemen Resiko
Proses di mana keputusan yang dibuat tentang bagaimana pendekatan, merencanakan, dan melaksanakan kegiatan manajemen resiko. Hal ini diselesaikan sebagai bagian dari kelompok proses perencanaan.
2.      Identifikasi Resiko
Menentukan pengaruh tujuan proyek, dan mengidentifikasi karakteristik resiko tersebut.
3.      Analisis Resiko Kualitatif
Memprioritaskan resiko untuk analisis masa depan dengan menganalisis kemungkinan terjadinya dan dampak resiko.
4.      Analisis Resiko Kuantitatif
Memberikan nomor ke resiko sebagai bagian dari menentukan dampak pada tujuan proyek secara keseluruhan.
5.      Respon Resiko Perencanaan
Mengetengahkan opsi dan rencana aksi untuk meningkatkan peluang dan mengurangi ancaman.
6.      Pemantau Resiko dan Pengendalian
  Melibatkan mengawasi efektivitas tanggapan resiko, pemantauan resiko residu, mengidentifikasi dan mendokumentasikan resiko baru, dan meyakinkan bahwa proses manajemen resiko diikuti. Hal ini dilakukan sepanjang Monitoring dan Pengendalian Proses Grup. 

Dalam rangka untuk mengelola resiko kita harus memahami apa itu resiko.Dalam pandangan definisi terbaik adalah yang diberikan oleh Larry Krantz, Kepala Eksekutif Euro Login Ltd di Inggris. Larry mengatakan bahwa resiko adalah kombinasi dari kendala dan ketidakpastian. Kita semua menghadapi kendala dalam proyek yang dijalankan  dan juga ketidakpastian. Jadi kita bisa meminimalkan risiko dalam proyek baik dengan menghilangkan kendala atau dengan mencari dan mengurangi ketidakpastian.
            Ada dua tahap dalam proses Manajemen Resiko Proyek yaitu Penilaian Resiko dan Pengendalian Resiko. Penilaian Resiko dapat terjadi setiap saat selama proyek, meskipun lebih cepat lebih baik. Namun, Risk Control tidak bisa efektif tanpa Risk Assessment sebelumnya. Demikian pula, kebanyakan orang cenderung berpikir bahwa memiliki Penilaian Resiko, mereka telah melakukan semua yang diperlukan. Terlalu banyak proyek menghabiskan banyak upaya pada Penilaian Resiko dan kemudian mengabaikan Resiko kontrol sepenuhnya. 

Risk Assessment memiliki tiga unsur:

1.  Mengidentifikasi Ketidakpastian
Jelajahi rencana seluruh proyek dan mencari area ketidakpastian.

2.  Analisa Resiko
Tentukan berapa wilayah ketidakpastian yang dapat mempengaruhi kinerja proyek, baik dalam durasi, biaya, atau memenuhi persyaratan pengguna.

3.   Memprioritaskan Resiko
Menetapkan Resiko mana yang harus dihilangkan sepenuhnya, karena dampak potensial yang ekstrim, yang seharusnya menjadi perhatian manajemen secara teratur, dan yang cukup kecil untuk menghindari perhatian manajemen rinci.

Dengan cara yang sama, Pengendalian Risiko memiliki tiga unsur, sebagai berikut:
1.  Mengurangi Resiko
Ambil tindakan apa pun dari awal yang mungkin untuk mengurangi efek Resiko. Lebih baik untuk menghabiskan uang pada mitigasi daripada untuk memasukkan dalam rencana kontingensi.

2.  Rencana Darurat
Untuk semua orang Resiko yang dianggap signifikan, memiliki rencana darurat di tempat sebelum hal itu terjadi.

3.  Mengukur dan Kontrol
Melacak efek dari resiko diidentifikasi dan mengatur semua dengan sukses.

Mengidentifikasi Ketidakpastian (dan Kendala)

Jelajahi rencana seluruh proyek dan mencari area ketidakpastian atau kendala. Kita perlu merangkak di atas rencana untuk mencari hal-hal yang bisa membuat proyek terlambat.
Beberapa contoh bidang ketidakpastian yang sering terjadi :

·         Kegagalan untuk memahami untuk siapa proyek ini
·  Kegagalan untuk menunjuk pengguna eksekutif yang bertanggung jawab untuk mensponsori proyek
·         Kegagalan untuk menunjuk seorang manajer proyek yang memenuhi syarat
·         Kegagalan untuk mendefinisikan tujuan proyek
·   Kegagalan untuk mengamankan komitmen dari orang-orang yang diperlukan untuk membantu proyek
·         Kegagalan untuk memperkirakan biaya secara akurat
·         Kegagalan untuk menentukan kebutuhan pengguna
·         Kegagalan untuk menyediakan lingkungan kerja yang baik untuk proyek
·    Kegagalan untuk mengikat semua orang yang terlibat dalam proyek dengan kontrak atau Dokumen Kesepahaman






Implementasi Perencanaan Proyek

1. Cara menggambar network diagram

Pertama lihat tabel diagram yang berisi Activity, Duration, dan Predecessor. Buat diagram seperti gambar. ES Activity pertama itu bernilai 0 kemudian untuk mencari LS = ES + Duration yang tercantum pada tabel diagram. Lalu arahkan activity tersebut ke Predecessor yang berhubungan. Setelah membuat Activity selanjutnya tentukan ES yakni nilai LS dari Predecessor yang paling besar. Lakukan hal itu untuk Activity-activity selanjutnya hingga Activity yang terakhir. Cara perhitungan di atas adalah menggunakan Forward Pass.Untuk menghitung LF, EF, dan S yaitu turunkan nilai LS pada Activity yang terakhir ke LF. Kemudian untuk menentukan EF pada Activity yang terakhir yakni EF = LF – Duration. Untuk mencari S yaitu S = EF – ES. Untuk menentukan LF pada Activity sebelumnya pilih nilai ES yang terkecil dari Predecessor yang ada yang saling berhubungan. Lakukan hal tersebut sampai pada Activity paling awal hingga nilai S diperoleh pada keseluruhan Activity. Untuk menentukan jalur kritis yakni pilih S yang bernilai 0 pada Predecessor yang berhubungan.

2. Tabel Diagram Activity


Activity
Duration
Predecessor
A
6
-
B
8
-
C
5
-
D
13
B
E
9
C
F
15
A
G
17
A
H
9
F
      I
       6
          G
     J
      12
        D,E


Berikut adalah gambar network diagram     :


















3. Penjelasan tentang Forward Pass , ES, EF.

Forward Pass Perhitungan waktu aktivitas dengan hitungan maju
ES (Earliest Activity Start Time) : Waktu mulai paling awal dalam suatu kegiatan
EF (Earliest Activity Finish Time) : Waktu selesai paling awal dalam suatu kegiatan


4. Gambar Forward Pass



5. Penjelasan tentang Backward Pass, LS, LF

Backward Pass
Perhitungan waktu aktivitas dengan hitungan mundur.

LS (Latest Activity Start Time)
Waktu paling lambat kegiatan boleh dimulai tanpa memperlambat pelaksanaan proyek secara keseluruhan.

LF (Latest Activity Finish Time)
Waktu paling lambat kegiatan boleh diselesaikan tanpa memperlambat pelaksanaan proyek secara keseluruhan.


6. Gambar Backward Pass



7.  Cara Menghitung Slack

Total Slack adalah jumlah total waktu yang dimiliki oleh suatu aktivitas yang dapat ditunda tanpa mempengaruhi durasi proyek secara keseluruhan. Rumus Total Slack adalah :

                                                Total Slack = LS – ES = LF – EF


8. Cara Menghitung Critical path

Critical Path adalah Jalur terpanjang melalui diagram dengan jumlah slack atau float paling sedikit. Cara menentukan Critical Path adalah :
a.    Buatlah diagram jaringan yang baik
b.   Tambahkan estimasi durasi untuk semua aktivitas pada setiap jalur melalui diagram jaringan.
c.    Jalur terpanjang merupakan critical path
d.   Jika satu atau lebih aktivitas pada critical path ternyata membutuhkan waktu yang lebih panjang daripada yang direncanakan, maka jadwal proyek akan menjadi meleset kecuali manajer proyek mengambil tindakan koreksi.

9. Menentukan Durasi Proyek

Durasi Proyek adalah Lamanya waktu dari permulaan sampai penyelesaian suatu proyek yang terdiri dari aktivitas-aktivitas. Cara menghitung durasi proyek adalah menjumlahkan durasi activity satu dengan durasi activity-activity lainnya sehingga menghasilkan total Durasi Proyek.







Selasa, 21 Desember 2010

Belajar If, Else, dan Cursor pada DBMS

Syntax IF..ELSE dan CURSOR pada SQL
Sebelum memulai melakukan syntax if...else, kita melakukan langkah-langkah connect to database sql terlebih dahulu seperti biasa, untuk melihat langkah sebelumnya klik disini.


Contoh 1 syntax if...else
declare
input number(3);

begin
input:=&angka;
if input=1 then
dbms_output.put_line( input ||' Adalah hari Senin');
elsif input=2 then
dbms_output.put_line(input||' Adalah hari Selasa');
elsif input=3 then
dbms_output.put_line(input||' Adalah hari Rabu');
elsif input=4 then
dbms_output.put_line(input||' Adalah hari kamis');
elsif input=5 then
dbms_output.put_line(input||' Adalah hari Jumat');
elsif input=6 then
dbms_output.put_line(input||' Adalah hari Sabtu');
elsif input=7 then
dbms_output.put_line (input||' Adalah hari Minggu');
else
dbms_output.put_line('maaf inputan yang anda masukan salah');
end if;
end;
/

hasil syntax:



Contoh 2 syntax if...else

declare
harga number(10);
jumlah number(10);
total number(10);
diskon number (3);
bayar number(10);

begin
harga:= &harga_buku;
jumlah:= &jumlah_beli;

total:=harga*jumlah;
if total > 50000 then
diskon:=10;
bayar:= total*((100-diskon)/100);
dbms_output.put_line('Maka harga : ' || bayar );
end if;
end;
/

hasil syntax:




Contoh 3 syntax if...else
contoh yang ini berbeda dari contoh sebelumnya, contoh yang ini mengambil informasi waktu atau jam dari sebuah sistem.
declare
nama varchar(15);
jam number(4);

begin
nama:='&masukan_nama';
jam:=to_char(sysdate,'HH24');
dbms_output.put_line( nama );
if (jam >='05' and jam <='12') then dbms_output.put_line ('selamat pagi' ||' sekarang udah jam ' || jam ); elsif (jam >='12' and jam <='16') then dbms_output.put_line ('selamat siang' ||' sekarang udah jam ' || jam ); elsif (jam >='16' and jam <='21') then
dbms_output.put_line ('selamat sore'||' sekarang udah jam ' || jam );
else
dbms_output.put_line ('selamat malam'||' sekarang udah jam ' || jam );
end if;
end;
/

karena contoh ini mengambil informasi waktu dari sistem, dan pada saat saya membuat kebetulan pukul 00.00 maka hasilnya :



Sekarang kita beralih ke syntax cursor pada SQL, untuk melakukan syntax cursor ini sebaiknya kita connect ke hr terlebih dahulu, seperti biasa cara connectnya sama kaya cara connect sql sebelumnya.
Sebelum lihat syntaxnya, terlebih dahulu kita harus tau cursor itu apa, jenisnya apa saja, dan fungsinya. Cursor adalah suatu variable dalam blok PL/SQL yang tidak mengijinkan seorang programer membuat query yang menghasilkan lebih dari satu baris untuk ditampung di dalam nya. Cursor ada 2 macam yaitu :
a. Cursor Eksplisit : Cursor yang harus dideklarasikan terlebih dahulu sebelum digunakan, sedangkan
b. Cursor Implisit : Cursor yang tidak perlu dideklarasikan dulu pada declare section. contoh cursor implisit diasosiasikan dengan perintah SELECT, INSERT, DELETE, dan UPDATE.

Contoh-contoh syntax-nya adalah sebagai berikut :


Contoh 1 syntax cursor implisit :

untuk menampilkan nama depan, nama belakang, gaji, email dan nomor telepon yang ada pada tabel employees yang dibuka dari user hr, sebelum menampilkannya, kita bisa menginputkan nama tersebut.


declare
nama_cari employees.first_name%type;
nama_depan employees.first_name%type;
nama_belakang employees.last_name%type;
gaji employees.salary%type;
email employees.email%type;
no_telp employees.phone_number%type;

begin
nama_cari:='&masukkan_nama';
select first_name, last_name, salary, email, phone_number
into nama_depan,nama_belakang, gaji, email, no_telp
from employees
where first_name = nama_cari;
dbms_output.put_line('nama depan : '|| nama_depan );
dbms_output.put_line('nama belakang : '|| nama_belakang );
dbms_output.put_line('email : '|| email );
dbms_output.put_line('no telepon : '|| no_telp );
dbms_output.put_line('gaji : '|| gaji );
end;
/

hasilnya adalah :



Contoh 2 syntax cursor implisit

contoh : untuk menginputkan nama, dan memunculkan nama depan, pekerjaannya, dan gaji yang ada di tabel hr.

declare
nama_cari employees.first_name%type;
nama_depan employees.first_name%type;
job jobs.job_title%type;
gaji employees.salary%type;

begin
nama_cari:='&masukkan_nama';
select first_name, job_title, salary
into nama_depan, job, gaji
from employees e inner join jobs j
on (e.job_id=j.job_id)
where first_name=nama_cari;
dbms_output.put_line('pegawai bernama '||nama_depan|| ' pekerjaannya sebagai '|| job || 'dan gajinya adalah '|| gaji);
end;
/
hasilnya adalah :



Contoh 3 syntax cursor eksplisit

untuk menampilkan nama depan dan nama belakang, serta gajinya yang diambil dari tabel user hr.


declare
nama_cari employees.first_name%type;
nama_depan employees.first_name%type;
nama_belakang employees.last_name%type;
gaji employees.salary%type;
cursor saya is
select first_name, last_name, salary
from employees
where first_name=nama_cari;

begin
nama_cari:='&masukkan_nama';
open saya;
loop
fetch saya into nama_depan, nama_belakang, gaji;
exit when saya%notfound;
dbms_output.put_line('pegawai bernama ' || nama_depan ||nama_belakang ||'gajinya adalah '|| gaji );
end loop;
close saya;
end;
/


hasilnya adalah :

Belajar Looping pada DBMS

SYNTAX LOOPING PADA SQL
Looping berfungsi untuk mengulang data yang kita inputan..
contoh syntax-nya adalah sbb:

Pernyataan While-Loop
Perintah while-loop akan terus-melakukan iteras (memproses baris perintah secara berulang) selama kondisi bernilai TRUE. Contoh bentuk dari pernyataan Loop sebagai berikut:



declare
i number(3);

begin
i :='&angka';
while 1<=i loop
dbms_output.put_line( i );
i:=i-1;
end loop;
end;
/

hasilnya adalah sebagai berikut:

-------------------------------------------------------------------------------------
DECLARE
i NUMBER(3);
j NUMBER(5);
BEGIN
i:=&angka;
j:=&batas;
WHILE i <= j LOOP
if mod(i,2)=1 then
dbms_output.put_line(i ||'ganjil' );
else
dbms_output.put_line('genap');
end if;
i := i + 1;
END LOOP;
END;
/

hasilnya adalah sebagai berikut:

Belajar Sql DBMS

Belajar SCRIPT SQL
Ey,,,ey,, sebelum kita belajar sntax script tuh gimana,, ternyata ada cara login yang mudah loh..
1. Ini Login yang mudah caranya
ketik : sqlplus user\password
contoh : sqlplus rini\xxxxx
2. Kalo udah login buat syntax di sebuah folder sesuka lo dengan format
file name: .sql dan save as type: all files
contoh : coba.sql
lalu save as type all files dan klik save.
Lihat gambar!!!



3. untuk membuka scripting yang kita simpan di notepad, ketik
@'[nama folder tinggal dicopy paste dari file yang kita simpan, lalu dipaste di sql]';
nb: ga pake tanda []
contoh : @'E:\DATA RINI\Mata Kuliah\DBMS\Teori\30092010\script.sql';


4. dan abis itu untuk melihat hasil scripting, ketik set serveroutput on;



Tuh baru langkah-langkah buat scripting sql,,
Nah nih ada beberapa rumus-rumus script anonymous PL/SQL, untuk membuat atau mengetik rumus-rumus ini masuk ke langkah diatas sebelum menjalankan no. 2. Rumus-rumus ini bisa dikerjain di notepad atau notepad++.

RUMUS DASAR SCRIPT ANONYMOUS PL/SQL:

declare

begin dbms_output.put_line('Bismillah');

end;
/


====================================================================

declare
a varchar (5);
b number (10);
c number (10);


begin
A:='&nama';
B:=&umur;
C:= b+5;

dbms_output.put_line('Hai nama saya '||A);
dbms_output.put_line('5 tahun lagi saya berumur ' || C );

end;
/==========================================================================

declare
B number (3);
C number (3);
D number (3);
E number (3);
F number (3);
G number (3,2);

begin
B:=&NilaiA;
C:=&NilaiB;
D:=b+c;
E:=b-c;
F:=b*c;
G:=b/c;

dbms_output.put_line('Selamat datang di kalkulator cupu');
dbms_output.put_line(B ||' ditambah '|| C ||' sama dengan '||D);
dbms_output.put_line(B ||' dikurang '|| C ||' sama dengan '||E);
dbms_output.put_line(B ||' dikali '|| C ||' sama dengan'||F);
dbms_output.put_line(B ||' dibagi '|| C ||' sama dengan '||G);

end;
/

Sejarah DBMS

MySQL
SQL adalah suatu program yang berfungsi untuk membuat basis data. Sejarah SQL dimulai dari artikel seorang peneliti dari IBM bernama EF Codd yang membahas tentang ide pembuatan basis data relasional pada bulan Juni 1970. Artikel ini juga membahas kemungkinan pembuatan bahasa standar untuk mengakses data dalam basis data tersebut. Bahasa tersebut kemudian diberi nama SEQUEL (Structured English Query Language). Setelah terbitnya artikel tersebut, IBM mengadakan proyek pembuatan basis data relasional berbasis bahasa SEQUEL. Akan tetapi, karena permasalahan hukum mengenai penamaan SEQUEL, IBM pun mengubahnya menjadi SQL. Implementasi basis data relasional dikenal dengan System/R. Di akhir tahun 1970-an, muncul perusahaan bernama Oracle yang membuat server basis data populer yang bernama sama dengan nama perusahaannya. Dengan naiknya kepopuleran Oracle, maka SQL juga ikut populer sehingga saat ini menjadi standar de facto bahasa dalam manajemen basis data.
Secara umum, SQL terdiri dari dua bahasa, yaitu Data Definition Language (DDL) dan Data Manipulation Language (DML). Implementasi DDL dan DML berbeda untuk tiap sistem manajemen basis data (SMBD).

Data Definition Language (DDL)

DDL digunakan untuk mendefinisikan, mengubah, serta menghapus basis data dan objek-objek yang diperlukan dalam basis data, misalnya tabel, view, user, dan sebagainya. Secara umum, DDL yang digunakan adalah
• CREATE untuk membuat objek baru,
• USE untuk menggunakan objek,
• ALTER untuk mengubah objek yang sudah ada,
• DROP untuk menghapus objek.
DDL biasanya digunakan oleh administrator basis data dalam pembuatan sebuah aplikasi basis data.



Data Manipulation Language

DML digunakan untuk memanipulasi data yang ada dalam suatu tabel. Perintah yang umum dilakukan adalah:
 SELECT untuk menampilkan data
 INSERT untuk menambahkan data baru
 UPDATE untuk mengubah data yang sudah ada
 DELETE untuk menghapus data


CARA MEMPERGUNAKAN SQL :
- Sebelum mempergunakan sql, lakukan instalasi program yang mendukung untuk
menjalankan SQL terlebih dahulu, misalnya: instalasi program oraclexe.Download oracle
- Setelah selesai download.
- Lakukan Instalasi software anda terlebih dahulu di komputer atau laptop anda,
Ketika proses instalasi disana biasanya tercantumkan user dan password , masukan user
dan password yang mudah diingat untuk menjalankan program sql anda
- Setelah selesai melakukan proses instalasi.
Anda bisa menjalankan program dengan mengklik start, All programs, Oracle Database 10g Express Edition Go To Database Home Page. Lalu disitu masukkan username dan password sama seperti
user dan password yang dicantumkan pada saat proses imstalasi.
- Atau bisa juga menjalankan program dengan menggunakan command prompt. Dengan caranya:
memencet simbol jendela windows+R (pada keyboard) trus ketik cmd lalu tekan enter.
- Setelah itu ketik sqlplus lalu masukan username dan password anda. Lalu masukan syntacx yang ada pada sql dan kamu bisa menjalankan program sql.

Beberapa perintah dasar yang termasuk dalam DML antara lain:

1. SELECT
Fungsi : Command SELECT ini berfungsi untuk menampilkan sesuatu. Menampilkan disini tidak hanya menampilkan data dari sebuah table saja, tetapi juga untuk menampilkan suatu ekspresi. Seperti menampilkan hanya field yang memiliki kategori Suplement saja.
Syntax : SELECT * FROM nama_tabel;
Parameter : from, order by, where, dll
Contoh : SELECT * FROM customer;
Penjelasan : perintah diatas akan menampilkan semua isi pada tabel cat.


2. DESC
Fungsi : Command DESC ini berfungsi untuk menampilkan struktur tabel yang telah dibuat. Apa saja field yang telah dibuat, type data dari field tersebut, dan primary key akan terlihat disini.
Syntax : DESC nama_table;
Parameter : -
Contoh : DESC customer;
Penjelasan : perintah diatas akan memperlihatkan stuktur dari tabel obat yang telah dibuat.


3. INSERT INTO
Fungsi : Command INSERT INTO ini berfungsi untuk menambahkan data/record dalam suatu tabel yang telah dibuat.
Syntax : INSERT INTO nama_tabel VALUES (‘isi_field1’ , ‘isi_field2’,……);
Parameter : values, set
Contoh : INSERT INTO customer VALUES (’CO012’,’Rini’,’Bekasi’,’087656767’);
Penjelasan : perintah diatas akan membuat sebuah record baru dalam tabel obat dengan id_customer = CO012, nama_customer = rini, alamat= bekasi, telepon= 087656767.


4. UPDATE
Fungsi : Command UPDATE ini berfungsi untuk merubah/memperbaharui data yang telah ada di dalam tebel.
Syntax : UPDATE nama_tabel SET nama_field = ’nilai_baru’ WHERE nama_field = ’kondisi’ ;
Parameter : set, where
Contoh : UPDATE customer SET id_customer = ‘CE008’ WHERE nama_customer = ‘Sijale’;
Penjelasan : perintah diatas akan mengubah id_obat BD019 menjadi CE008 pada tabel obat yang memilikinama_customer Sijale.


5. DELETE FROM
Fungsi : Command DELETE FROM ini berfungsi untuk menghapus record yang ada pada sebuah tabel.
Syntax : DELETE FROM nama_tabel WHERE nama_field =’option’;
Parameter : where
Contoh : DELETE FROM obat WHERE id_customer =’CO012’;
Penjelasan : perintah diatas akan menghapus record dari tabel obat yang memiliki id_customer CO012.


6. EXPLAIN
Fungsi : Command EXPLAIN ini memiliki fungsi yang sama seperti Desc yaitu berfungsi untuk menampilkan struktur tabel yang telah dibuat, seperti nama_field, type data dari field tersebut, dan primary key.
Syntax : EXPLAIN nama_table;
Parameter : -
Contoh : EXPLAIN customer;
Penjelasan : perintah diatas akan memperlihatkan stuktur dari tabel customer yang telah dibuat.


7. SELECT DESCENDING
Fungsi : Command SELECT DESCENDING ini berfungsi menampilkan semua data dari bawah ke atas berdasarkan field yang telah ditentukan.
Syntax : SELECT field1, field2, dan seterusnya FROM nama_tabel ORDER BY field yang jadi acuan DESC;
Parameter : from, order by, desc
Contoh : SELECT id_customer nama_customer, jumlah FROM BY obat ORDER BY id_obat DESC;
Penjelasan : Perintah diatas akan menampilkan data pada id_customer, nama_costumer dan jumlah pada tabelcustomer dan yang menjadi acuan pengurutan data dari bawah ke atas adalah id_customer.


8. SELECT COUNT
Fungsi : Command SELECT COUNT ini berfungsi menampilkan jumlah record yang ada dalam suatu tabel.
Syntax : SELECT COUNT(*)FROM nama_tabel;
Parameter : count, from
Contoh : SELECT COUNT(*)FROM customer;
Penjelasan : Perintah diatas menampilkan jumlah record yang ada pada tabel customer.


9. SELECT MAX
Fungsi : Command SELECT MAX ini berfungsi untuk mencari nilai tertinggi pada sebuah field di tabel.
Syntax : SELECT MAX(nama_field) FROM nama_tabel;
Parameter : max, from
Contoh : SELECT MAX(jumlah) FROM customer;
Penjelasan : Perintah diatas akan menampilkan nilai tertinggi dari field jumlah pada tabel customer.


10. SELECT MIN
Fungsi : Command SELECT MIN ini berfungsi untuk mencari nilai terendah pada sebuah field di tabel.
Syntax : SELECT MIN(nama_field) FROM nama_tabel;
Parameter : min, from
Contoh : SELECT MIN(jumlah) FROM customer;
Penjelasan : Perintah diatas akan menampilkan nilai terendah dari field jumlah pada tabel customer

Pengertian Procedure pada DBMS

Pengertian Procedure :

Procedure adalah blok PL/SQL yang menyimpan sekumpulan perintah tanpa disertai pengambilan nilai.
Procedure dapat memakai paramater atau tanpa parameter,
Perintah membuat prosedur dapat di lihat sebagai berikut :

Contoh procedure tanpa paramater :

CREATE OR REPLACE PROCEDURE add_dept IS
dept_id departments.department_id%TYPE;
dept_name departments.department_name%TYPE;
BEGIN
dept_id:=280;
dept_name:='ST-Curriculum';
INSERT INTO departments(department_id, department_name)
VALUES(dept_id, dept_name);
DBMS_OUTPUT.PUT_LINE('Berhasil menginsert'||SQL%ROWCOUNT||'Berhasil');
END;
/


cara memanggil prosedur tanpa pake parameter (pilih salah satu perintah berikut ini):


exec add_dept();

call add_dept();

begin
add_dept();
end;
/


Contoh procedure memakai paramater :

CREATE OR REPLACE PROCEDURE add_dept_pake_param
(dept_id IN departments.department_id%TYPE,
dept_name departments.department_name%TYPE)
IS
BEGIN
INSERT INTO departments(department_id, department_name)
VALUES(dept_id, dept_name);
DBMS_OUTPUT.PUT_LINE('Berhasil menginsert '||SQL%ROWCOUNT||' Berhasil');
exception
when dup_val_on_index then
DBMS_OUTPUT.PUT_LINE('Datanya udah ada');
END;
/



cara memanggil prosedur memakai parameter (pilih salah satu perintah berikut ini):


exec add_dept_pake_param(11,'cs');

call add_dept_pake_param(12, 'keuangan');

begin
add_dept_pake_param(13, 'keselamatan');
end;
/

contoh perintah memanggil buat prosedur yang pake syntax update :











call update_dept(10,'Kebersihan');

contoh perintah manggil buat prosedur yang pake syntax delete :

call del_dept(100);