Secara tidak sengaja saya browsing di internet dan mendapatkan cara memperoleh penghasilan tambahan melalui internet. SEMUANYA GRATIS lho, anda tidak perlu mengeluarkan uang sedikitpun yang diperlukan hanya sedikit USAHA saja. SUDAH TERBUKTI, JIKA TIDAK PERCAYA ANDA BUKTIKAN SAJA SENDIRI.
Selasa, 21 April 2009
BAB I
PENDAHULUAN
Latar Belakang Masalah
Data dan Informasi telah menjadi bagian vital dalam pertumbuhan bisnis. Saat ini data dan informasi pada umumnya disimpan dalam satu atau lebih database. Pada skala yang luas dan historis penyimpanan data disimpan dalam sebuah gudang data atau yang lebih dikenal dengan Datawarehouse. Data dan informasi tersebut dikelola oleh sistem khusus yang dikenal dengan Database Management System (DBMS).
DBMS tidak hanya berperan untuk menyimpan data ataupun informasi, tetapi juga dapat berperan besar dalam pengelolaan, manipulasi data, hingga usiness Intelegence. DBMS seperti SQL Server, MySQL, PostgreSQL, SQL*Plus ataupun Oracle, pada umumnya berkomunikasi dengan antarmuka aplikasi dengan menggunakan dua pendekatan yakni menggunakan SQL Statement dan Stored procedure.
Oracle merupakan slaah satu produk RDBMS (Relational Database Management System) yang paling dikenal saat ini. Salah satu program yang terdapat di Oracle adalah SQL*Plus. Walaupun mirip SQL berbeda dengan SQL*Plus. SQL adalah bahasa, sementara SQL*Plus adalah suatu program (binary executable file, SQLPLUSSW.exe di Windows). Kita bisa memakai kakas (executable file) lain untuk membuat program dalam bahasa SQL. Berikut rincian perbedaannya.
| SQL | SQL*Plus |
| Sebuah bahasa | Sebuah kakas(development tool) |
| ANSI standard | Oracle propietary (tidak baku) |
Operasi-operasi yang bisa di-run di SQL*Plus mencakup SQL operations (yang standar di Oracle), PL/SQL operations, dan SQL*Plus operations (yang tidak standar).
SQL*Plus berperan sebagai development tool dan instant manager (disebut server-manager, server di berarti instance). SQL*Plus berperan sebagai instance manager karena dari SQL*Plus kita dapat men-start dan stop instance.
Rumusan Masalah
SQL Plus merupakan salah satu aplikasi yang bisa kita gunakan untuk melakukan administrasi database. Namun ada syarat yang musti dimiliki yaitu kemampuan untuk menggunakan query SQL. Berikut penulis jelaskan beberapa penggunaan query SQL. SQL ( Structured Query Language ) merupakan bahasa query yang digunakan untuk mengakses database relasional. SQL sekarang sudah menjadi bahasa database standard dan hampir semua sistem database memahaminya. SQL terdiri dari berbagai jenis statemen. Semuanya didesain agar dia memungkinkan untuk dapat secara interaktif berhubungan dengan database.
Penggunaan SQL pada DBMS ( Database Management System ) sudah cukup luas. SQL dapat dipakai oleh berbagai kalangan, misalnya DBA ( Database Administrator ), progammer ataupun pengguna. Hal ini disebabkan karena :
SQL sebagai bahasa administrasi database
Dalam hal ini SQL dipakai oleh DBA untuk menciptakan serta mengendalikan pengaksesan database.
SQL sebagai bahasa query interaktif
Pengguna dapat memberikan perintah-perintah untuk mengakses database yang sesuai dengan kebutuhannya.
SQL sebagai bahasa pemrograman database
Pemrogram dapat menggunakan perintah-perintah SQL dalam program aplikasi yang dibuat.
SQL sebagai bahasa klien/server
SQL juga dipakai sebagai untuk mengimplementasikan sistem klien/server. Sebuah klien dapat menjalankan suatu aplikasi yang mengakses database. Dalam hal ini sistem operasi antara server dan klien bisa berbeda.
Di samping hal tersebut diatas SQL juga diterapkan pada internet atau intranet untuk mengakses database melalui halaman-halaman web untuk mendukung konsep web dinamis.
Pernyataan SQL dapat dikelompokkan menjadi 5 kelompok DDL, DML, DCL, pengendali transaksi dan pengendali programatik.
DDL ( Data Definition Language )
DDL merupakan kelompok perintah yang berfungsi untuk mendefinisikan atribut-atribut database, table, atribut (kolom), batasan-batasan terhadap suatu atribut serta hubungan antar table. Yang termasuk kelompok DDL ini adalah :
CREATE untuk menciptakan table ataupun indeks
ALTER untuk mengubah struktur table
DROP untuk menghapus table ataupun indeks
DML ( Data Manipulation Language )
Adalah kelompok perintah yang berfungsi untuk memanipulasi data, misalnya untuk pengambilan, penyisipan pengubahan dan penghapusan data. Yang termasuk DML :adalah
SELECT memilih data
INSERT menambah data
DELETE menghapus data
UPDATE mengubah data
DCL ( Data Control Language )
Berisi perintah-perintah untuk mngendalikan pengaksesan data. Yang termasuk DCL adalah :
GRANT memberikan kendali pada pengaksesan data.
REVOKE mencabut kemampuan pengaksesan data
LOCK TABLE mengunci table
Pengendali transaksi
Adalah perintah-perintah yang berfungsi untuk mengendalikan pengeksekusian transaksi. Yang termasuk kelompok ini adalah :
COMMIT menyetujui rangkaian perintah yang berhubungan erat yang telah berhasil dilakukan
ROLLBACK membatalkan transaksi yang dilakukan karena adanya kesalahan atau kegagalan pada salah satu rangkaian perintah.
Batasan Masalah
Dengan menggunakan Oracle dengan program SQL*Plus beserta perintah-perintah yang terdapat didalamnya, sebagaimana yang telah dipelajari dalam mata kuliah praktikum basis data II maka diharapkan persoalan atau kasus yang diberikan dapat dipercahkan dan menghasilkan hasil akhir yang sesuai harapan.
Adapun tujuan dari latihan ini, diharapkan selain dapat memecahkan permasalahan yang dihadapi, juga dapat menambah kemampuan untuk menguasai Oracle, khususnya program SQL*Plus.
Sedangkan kasus atau permasalahan yang diberikan adalah penentuan kuadran suatu titik P(x,y). Dengan membuat blok PL/SQL yang dapat menentukan kuadran dari titik yang dimasukkan. Keterangan untuk penentuan kuadran dari suatu titik P(x, y) di dalam bidang kartesian adalah sebagai berikut :
-
Kuadran
Nilai X
Nilai Y
I
Positif
Positif
II
Negatif
Positif
III
Negatif
Negatif
IV
Positif
Negatif
Sebagai catatan jika x dan y bernilai 0, titik tersebut tidak terdapat pada kuadran manapun melainkan berada di garis sumbu koordinat yaitu P(0,0).
BAB II
TINJAUAN PUSTAKA
Tinjauan Pustaka
Secara sederhana database (basis data) dapat diungkapkan sebagai suatu pengorganisasian data dengan bantuan komputer yang yang memungkinkan data dapat diakses dengan mudah dan cepat. Dalam hal ini, pengertian akses dapat mencakup pemerolehan data maupun pemanipulasian data, seperti menambah dan menghapus data.
Manfaat database banyak dijumpai disekeliling kita. ATM (Anjungan Tunai Mandiri) merupakan sebuah contoh teknologi informasi yang pada dasarnya memanfaatkan database. Aplikasi database yang lain dapat dijumpai pada toko-toko swalayan, perpustakaan, bahkan pada internet.
DBMS singkatan dari DataBase Management System. DBMS merupakan perangkat lunak atau program komputer yang dirancang secara khusus untuk memudahkan pengelolaan database. Salah satu macam DBMS yang populer dewasa ini berupa RDBMS (Relational DataBase Management System), yang menggunakan model basis data relasional atau dalam bentuk table-tabel yang saling terhubungkan.
Oracle merupakan slaah satu produk RDBMS (Relational Database Management System) yang paling dikenal saat ini. Salah satu program yang terdapat di Oracle adalah SQL*Plus. Walaupun mirip SQL berbeda dengan SQL*Plus. SQL adalah bahasa, sementara SQL*Plus adalah suatu program (binary executable file, SQLPLUSSW.exe di Windows). Kita bisa memakai kakas (executable file) lain untuk membuat program dalam bahasa SQL. Berikut rincian perbedaannya.
| SQL | SQL*Plus |
| Sebuah bahasa | Sebuah kakas(development tool) |
| ANSI standard | Oracle propietary (tidak baku) |
Operasi-operasi yang bisa di-run di SQL*Plus mencakup SQL operations (yang standar di Oracle), PL/SQL operations, dan SQL*Plus operations (yang tidak standar).
SQL*Plus berperan sebagai development tool dan instant manager (disebut server-manager, server di berarti instance). SQL*Plus berperan sebagai instance manager karena dari SQL*Plus kita dapat men-start dan stop instance.
Landasan Teori
Database bisa dianggap sebagai kumpulan dari berbagai informasi yang diatur sedemikian rupa dan disimpan pada media tertentu agar informasi tersebut dapat dimanfaatkan/diambil kembali. Ada tiga macam pembagian pada sistem Database :
Operasi kerja database
Bagian-bagian atau komponen sistem database
Konfigurasi sistem database
Pembagian berdasarkan operasi kerja meliputi
Penyimpanan
Pengolahan
Pembacaan kembali
Penyimpanan digunakan untuk memasukkan data-data tertentu ke dalam database. Penyimpanan ini bisa berarti memasukkan data baru atau mengubah data yang lama. Data yang disimpan ke dalam database bisa berupa data mentah (data-data yang belum mengalami pengolahan), atau data-data yang siap digunakan (sudah mengalami pengolahan terlebih dahulu). Bentuk yang pertama memungkinkan proses penyimpanan menjadi sederhana, karena dari data asli langsung dimasukkan ke database. Selain itu, seluruh data asli masih kelihatan (tersedia) yang memungkinkan dilakukan pengolahan sesuai dengan kebutuhan. Bahkan jika kebutuhannya berubah, cukup dilakukan perubahan pada prosesnya, bukan pada datanya. Namun ini membawa konsekuensi, setiap kali diinginkan hasil akhirnya, harus selalu dilakukan pengolahan data.
Bentuk yang kedua adalah dari data aslinya, sebelum dilakukan penyimpanan ke database, data asli tersebut diolah terlebih dahulu untuk mendapatkan hasil akhir. Setelah itu baru disimpan ke database. Cara ini mempercepat proses secara keseluruhan, karena pada saat memasukkan data, meskipun dilakukan pengolahan awal, datanya biasanya sedikit-sedikit sehingga tidak terasa.
Sedangkan saat membaca hasil akhirnya, cukup dilakukan pembacaan langsung dari tabel yang jelas mempercepat proses. Namun cara ini akan banyak menghilangkan data-data aslinya, dan setiap terjadi perubahan sistem, akan banyak mengalami kesulitan.
Untuk penerapan yang sesungguhnya, dapat dipertimbangkan untuk menggabungkan antara kedua cara tersebut. Misalkan jika ada data aslinya yang memang suatu saat tidak akan pernah digunakan lagi, dapat langsung diolah. Kemudian jika dianggap proses yang akan dilakukan tidak memerlukan waktu yang cukup panjang, sebaiknya data disimpan apa adanya, dengan proses dilakukan di belakang. Bisa juga digunakan data perantara, artinya dari data asli diolah sedikit untuk mendapatkan data pertengahan baru disimpan ke database. Ini akan sangat menghemat waktu.
Bagian Pengolahan digunakan untuk mendapatkan suatu informasi sesuai dengan yang diinginkan dari data aslinya. Ambil contoh data asli mengenai mahasiswa, pengolahan/proses yang bisa dilakukan misalnya menghitung jumlah total mahasiswa, atau berdasar jurusan, kelas dan sebagainya. Proses pengolahan ini bisa dilakukan di awal sebelum data disimpan, bisa pada saat membaca hasil akhir, dapat juga dari data yang sudah disimpan di dalam database diambil kembali untuk diolah kemudian disimpan kembali.
Pembacaan kembali digunakan untuk mengambil data yang ada di dalam data base untuk diolah, kemudian disimpan kembali atau dibuat laporannya. Ada beberapa hal yang bisa dilakukan pada saat pengambilan, antara lain, mengambil seluruh isi dari sebuah tabel database, atau gabungan dari beberapa tabel database. Ini biasanya untuk ditampilkan dalam bentuk tabel. Bisa juga mengambil sebagian dari isi tabel (dengan difilter/diambil dengan kriteria tertentu), atau hanya mengambil satu baris data saja. Semua itu tergantung dari proses atau hasil yang ingin dilakukan. Bagian-bagian atau komponen dari suatu sistem database secara umum meliputi :
File database/media simpan (DF)
Program/mesin pengolah database (Database Engine, DE)
Program aplikasi (AP)
Suatu program aplikasi, saat melakukan operasi dengan database, harus melewati/menggunakan database engine. Perintah-perintah dari program aplikasi seperti membuat tabel, membuka tabel, membaca isi tabel dan sebagainya. Perintah-perintah ini diteruskan ke database engine untuk diolah lebih lanjut. Database engine bertanggung jawab untuk melakukan operasi pada file database secara fisik, misalkan suatu tabel/isi tabel disimpan pada disk yang mana dan di mana lokasinya. Suatu data pada saat disimpan ke disk, format datanya seperti apa. Dan seterusnya.
Bahasa yang digunakan dari program aplikasi ke database engine hampir sama untuk setiap jenis database, terutama jika menggunakan perintah SQL. Sedangkan database engine harus selalu sesuai untuk setiap jenis database yang digunakan. Konfigurasi dari sistem database meliputi :
Database lokal
Database file server
Database client server
Jika file database, database engine dan program aplikasi terletak pada komputer yang sama, maka konfigurasi ini disebut dengan database lokal. Jika program aplikasi dan database engine terletak pada satu komputer, tetapi file database terletak pada komputer lain, dan terhubung dalam jaringan, maka konfigurasi ini disebut dengan database file server. Sedangkan jika file database dan database engine terletak pada satu komputer dan program aplikasi terletak pada komputer lainnya, maka ini disebut dengan database client server. Konfigurasi database lokal memiliki konfigurasi yang paling sederhana, paling murah dan paling cepat. Tetapi jelas, jenis ini tidak dapat digunakan dalam mode multi-user atau dalam suatu jaringan.
Database file server memperbaiki fungsi database lokal dengan memungkinkan adanya mode multi-user atau kerja dalam suatu jaringan. Selain itu, server yang digunakan tidak terlalu berat, karena hanya digunakan untuk menampung file database saja. Karena database engine terpisah jauh dengan file database, menyebabkan lalu-lintas jaringan menjadi relatif padat dan ujung-ujungnya sistem menjadi cukup lambat.
Database client server memperbaiki keduanya, yaitu dengan menawarkan mode multi-user, kerja jaringan dan akses yang cepat. Berhubung server harus menyimpan file database dan database engine, maka kerja server menjadi sangat berat. Karena itu, kinerja sistem database client server sangat ditentukan oleh kemampuan dari komputer server dan oleh kompleksitas dari database engine.
Dilihat dari cara penyimpanan/representasi data dalam database, dapat dibagi menjadi dua struktur database, database berbasis relasi (relational database) dan database berbasis obyek (object oriented database). Khusus untuk Oracle, struktur yang digunakan adalah berbasis relasi dan juga obyek. Artinya, Oracle dapat dipandang sebagai database relasi biasa, tetapi dapat juga dapat diperlakukan sebagai database obyek. Dalam hal ini, data-data yang disimpan ke dalam database Oracle bisa dalam bentuk object. Misalkan data-data object untuk penyimpanan multimedia.
Secara gampang, database relasi adalah database yang bekerja berdasarkan penyimpanan data dalam bentuk tabel dengan susunan baris dan kolom, dan antara satu tabel dengan tabel lainnya dapat saling dihubungkan/direlasikan. Sedangkan database yang berbasis obyek adalah, setiap data yang ada dianggap sebagai benda, sedangkan setiap benda sangat terkait dengan bendabenda lainnya yang terhubung seperti hirarki suatu keluarga (ada induk/orang tua/leluhur, dan ada anak/keturunan).
SQL Plus merupakan salah satu aplikasi yang bisa kita gunakan untuk melakukan administrasi database. Namun ada syarat yang musti dimiliki yaitu kemampuan untuk menggunakan query SQL. Berikut penulis jelaskan beberapa penggunaan query SQL. SQL ( Structured Query Language ) merupakan bahasa query yang digunakan untuk mengakses database relasional. SQL sekarang sudah menjadi bahasa database standard dan hampir semua sistem database memahaminya. SQL terdiri dari berbagai jenis statemen. Semuanya didesain agar dia memungkinkan untuk dapat secara interaktif berhubungan dengan database.
Penggunaan SQL pada DBMS ( Database Management System ) sudah cukup luas. SQL dapat dipakai oleh berbagai kalangan, misalnya DBA ( Database Administrator ), progammer ataupun pengguna. Hal ini disebabkan karena :
SQL sebagai bahasa administrasi database
Dalam hal ini SQL dipakai oleh DBA untuk menciptakan serta mengendalikan pengaksesan database.
SQL sebagai bahasa query interaktif
Pengguna dapat memberikan perintah-perintah untuk mengakses database yang sesuai dengan kebutuhannya.
SQL sebagai bahasa pemrograman database
Pemrogram dapat menggunakan perintah-perintah SQL dalam program aplikasi yang dibuat.
SQL sebagai bahasa klien/server
SQL juga dipakai sebagai untuk mengimplementasikan sistem klien/server. Sebuah klien dapat menjalankan suatu aplikasi yang mengakses database. Dalam hal ini sistem operasi antara server dan klien bisa berbeda.
Di samping hal tersebut diatas SQL juga diterapkan pada internet atau intranet untuk mengakses database melalui halaman-halaman web untuk mendukung konsep web dinamis.
Pernyataan SQL dapat dikelompokkan menjadi 5 kelompok DDL, DML, DCL, pengendali transaksi dan pengendali programatik.
DDL ( Data Definition Language )
DDL merupakan kelompok perintah yang berfungsi untuk mendefinisikan atribut-atribut database, table, atribut (kolom), batasan-batasan terhadap suatu atribut serta hubungan antar table. Yang termasuk kelompok DDL ini adalah :
CREATE untuk menciptakan table ataupun indeks
ALTER untuk mengubah struktur table
DROP untuk menghapus table ataupun indeks
DML ( Data Manipulation Language )
Adalah kelompok perintah yang berfungsi untuk memanipulasi data, misalnya untuk pengambilan, penyisipan pengubahan dan penghapusan data. Yang termasuk DML :adalah
SELECT memilih data
INSERT menambah data
DELETE menghapus data
UPDATE mengubah data
DCL ( Data Control Language )
Berisi perintah-perintah untuk mngendalikan pengaksesan data. Yang termasuk DCL adalah :
GRANT memberikan kendali pada pengaksesan data.
REVOKE mencabut kemampuan pengaksesan data
LOCK TABLE mengunci table
Pengendali transaksi
Adalah perintah-perintah yang berfungsi untuk mengendalikan pengeksekusian transaksi. Yang termasuk kelompok ini adalah :
COMMIT menyetujui rangkaian perintah yang berhubungan erat yang telah berhasil dilakukan
ROLLBACK membatalkan transaksi yang dilakukan karena adanya kesalahan atau kegagalan pada salah satu rangkaian perintah.
BAB III
ANALISA dan PERANCANGAN
Aanalisis
Dalam mata pelajaran atau mata kuliah matematika pada sub bab Trigonometri khususnya tentang diagram kartesius atau diagram kartesian, kita mengetahui bahwa dalam lingkarang atau sudut 3600 dibagi menjadi 4 kuadran. Untuk menentukan suatu titik, kita misalkan titik P(x,y) maka kita harus mengetahui terlebih dahulu batasan tiap-tiap kuadran. Adapun batasan tersebut adalah sebagai berikut :
-
Kuadran
Nilai X
Nilai Y
I
X >0
Y>0
II
X<0
Y>0
III
X<0
Y<0
IV
X>0
Y<0
Setelah mengetahui batasan tiap-tiap kuadran maka kita tinggal menggambarkan titik yang akan kita cari dan kita dapat mengetahui di kuadran berapakan titik P(x,y).
Akan tetapi kita masih memdapat kesulitan, bagaimana jika titik P terletak pada koordiniat P(0,0). Padahal dalam batasan untuk tiap-tiap kuadran nilai x dan y harus lebih besar atau lebih kecil dari 0 (nol). Jika kasus seperti ini terjadi maka titik P terletak pada garis sumbu koordiniat dan bukan terletak pada kuadran.
Dengan menggunakan bantuan Oracle dengan program SQL*Plus dan dasar teori Trigonometri tentang diagram kartesian atau kartesius diatas maka kita akan membuat program yang dapat mencari kuadran titik dari suatu kordinat P(x,y).
Sintaks Program
declare
x integer;
y integer;
k varchar2(30);
begin
x:= -1;
y:= 2;
if x = 0 and y = 0 then
k :='Garis sumbu koordinat';
elsif x > 0 and y > 0 then
k := 'Kuadran I';
elsif x <> 0 then
k := 'Kuadran II';
elsif x <>
k := 'Kuadran III';
else
k := 'Kuadran IV';
end if;
dbms_output.put_line('P('||to_char(x)||','||
to_char(y)||') berada di '||initcap(k));
end;
/
BAB IV
IMPLEMENTASI HASIL dan PEMBAHASAN
Implementasi Hasil
Untuk membuat programnya maka terlebih dahulu kita harus mendeklarasikan dahulu variabel-variabel yang digunakan. Setelah semua variabel dideklarisikan maka titik koordinat dari titik yang akan dicari harus didefiniskan. Misalkan untuk pendeklarasian dan penetuan dari titik koordinat P(x,y) adalah sebagai berikut :
declare
x integer;
y integer;
k varchar2(30);
begin
x:= -1;
y:= 2;
selanjutnya dibuat suatu perintah yang digunakan untuk mencari letak titik P(x,y) berada pada kuadran berapa ataukah berada pada baris sumbu koordinat. Perintah yang kita gunakan dalam penentuan titik kudran dari titik P(x,y) adalah percabangan. Percabangan adalah sebuah pemilihan yang didasarkan atas kondisi tertentu. Sebuah atau beberapa statemen yang terdapat pada badan percabangan hanya akan dieksekusi jika kondisi yang didefinisikan bernilai TRUE. Sebaliknya jika kondisi tersebut bernilai FALSE, badan percabangan tidak akan pernah dieksekusi karena semua kondisi yang terdapat pada badan percabangan selalu diperiksa pada saat awal.
Untuk percabangannya kita menggunakan percabangan Struktur Tiga Kondisi atau Lebih. Sintak umum untuk pembuatan badan percabangan yang mempunyai tiga kondisi atau lebih dapat anda lihat seperti berikut :
IF kondisi_1 THEN
Statemen_1;
…
ELSIF kondisi_2 THEN
Statemen_2;
…
ELSE
Statemen_3;
…
END IF;
Sintak diatas menunjukkan bahwa mula-mula dilakukan pengecekan nilai terhadap kondisi_1. Jika kondisi_1 bernilai TRUE, statemen_1 yang akan dieksekusi. Tetapi jika tidak, akan dilakukan pengecekan terhadap kondisi_2. Jika kondisi_2 bernilai TRUE, statemen_2 yang akan dieksekusi, tetapi jika kondisi_2 juga masih bernilai FALSE, berarti yang akan dieksekusi adalah statemen_3.
Terakhir kita tinggal menentukan hasil output atau keluaran hasil yang kita inginkan dan dengan sintaks program yang telah kita tuliskan pada bab sebelumnya maka kita akan memperoleh keluaran atau hasil akhir sebagai berikut :
P(-1,2) berada di Kuadran II
Pembahasan
Sebelum memulai mengerjakan program, terlebih dahulu kita harus memahami konsep atau dasar dari soal atau kasus beserta cara pemencahan masalahan agar kita dapat membuat dan menentukan program yang sesuai untuk permasalahan yang dihadapi.
Disamping memahami konsep dan dasar dari permasalah yang dihadapi, keahlian dalam penggunaan program yang akan digunakan juga saat penting, karena tanpa pemahaman yang cukup maka kita akan kesulitan untuk menuliskan permasalahan kedalam suatu program.
Sedangkan pada sintak diatas, nilai X yang didefinisikan adalah -1 dan nilai Y yang didefinisikan adalah 2. Karena pada program diatas menggunakan prinsip percabangan maka harus dilakukan pengecekan untuk tiap cabangnya sampai semua kondisi yang ditentukan dipenuhi atau semua cabang sudah dilakukan pengecekan. Mula-mula akan diperiksa kondisi X = 0 dan Y = 0. Karena -1 dan 2 tidak sama dengan 0, maka dilakukan pengecekan terhadap kondisi berikutnya yaitu X > 0 dan Y >0. Oleh karena -1 dan 2 juga karena salah satu statement tidak terpenuhi maka dilakukan pengecekan terhadap kondisi berikutnya.
Karena nilai -1 lebih kecil dari 0 dan 2 lebih besar dari 0 maka statement pada kondisi ini dieksekusi karena kedua kondisi yang diberikan telah terpenuhi. Setelah kondisi terpenuhi maka proses pengecekan pada kondisi-kondisi selanjutnya dihentikan yang kemudian akan dilanjutkan pada perintah selanjutnya.
BASIS DATA ( DATABASE )
DEFINISI DATABASE
Data adalah representasi fakta dunia nyata yang mewakili suatu objek seperti manusia (pegawai, mahasiswa, pembeli), barang, hewan, peristiwa, konsep, keadaan, dan sebagainya yang direkam dalam bentu angka, huruf, simbol, teks, gambar, bunyi atau kombinasinya.
Database atau basis data terbentuk dari sekelompok data-data yang memiliki jenis/sifat sama. Contohnya : data mahasiswa, data dosen, dll. Demikian juga, kumpulan dari data-data mahasiswa, data-data dosen, data-data keuangan dan lainnya dapat dikumpulkan lagi menjadi kelompok besar, misalkan data-data politeknik elektronika.
DBMS (Database Management System) adalah Perangkat Lunak yang menangani semua pengaksesan ke basis data
Basis data merupakan kumpulan data yang saling berhubungan (relasi). Relasi biasanya ditunjukan dengan kunci dari tiap file yang ada. Dalam satu file terdapat record-record yang sejenis, sama besar, sama bentuk, yang merupakan satu kumpulan entitas yang seragam. Satu record terdiri dari field yang saling berhubungan menunjukan bahwa field tersebut dalam satu pengertian yang lengkap dan direkam dalam satu record.
Dari pengertian diatas dapat disimpulkan bahwa basis data mempunyai beberapa kriteria penting, yaitu :
Bersifat data oriented dan bukan program oriented.
Dapat digunakan oleh beberapa program aplikasi tanpa perlu mengubah basis datanya.
Dapat dikembangkan dengan mudah, baik volume maupun strukturnya.
Dapat memenuhi kebutuhan sistem-sistem baru secara mudah
Dapat digunakan dengan cara-cara yang berbeda.
Prinsip utama basis data adalah pengaturan data dengan tujuan utama fleksibelitas dan kecepatan dalam pengambilan data kembali. Adapun Tujuan basis data diantaranya adalah sebagai berikut :
Efisiensi meliputi speed, space dan accurancy.
Menangani data dalam jumlah besar.
Kebersamaan pemakaian (Sharebility).
Meniadakan duplikasi dan inkonsistensi data.
TUJUAN PEMBUATAN DATABASE
Sistem database pada dasarnya adalah sistem terkomputerisasi yang tujuan utamanya untuk memelihara informasi dan membuat informasi tersebut tersedia pada saat diperlukan. Operasi-Operasi Yang Dapat Dilakukan Pada Database : menambahkan file ke sistem database, menyisipkan data ke dalam suatu file, mengambil data dari suatu file, mengubah data pada suatu file, menghapus data dari suatu file, menyajikan informasi dari suatu atau sejumlah file, mengosongkan file.
Kegunaan utama sistem basis data adalah agar pemakai mampu menyusun suatu pandangan abstraksi dari data. Bayangan mengenai data tidak lagi memperhatikan kondisi sesungguhnya bagaimana satu data masuk ke database disimpan dalam sektor mana, tetapi menyangkut secara menyeluruh bagaimana data tersebut dapat diabstraksikan mengenai kondisi yang dihadapi oleh pemakai sehari-hari. Sistem yang sesungguhnya, tentang teknis bagaimana data disimpan dan dipelihara seakan-akan disembunyikan kerumitannya dan kemudian diungkapkan dalam bahasa dan gambar yang mudah dimengerti oleh orang awam.
Ada tiga kelompok pemakai dalam tingkatan abstraksi saat memandang suatu database, yaitu :
Level Fisik : Level ini merupakan level abstraksi paling rendah karena menggambarkan bagaimana data disimpan dalam kondisi sebenarnya.
Level Konseptual : Level ini menggambarkan data apa yang disimpan dalam database dan hubungan relasi yang terjadi antara data dari keseluruhan database. Pemakai tidak memperdulikan kerumitan dalam struktur level fisik lagi, penggambaran cukup dengan memakai kotak, garis,dan hubungan secukupnya.
Level Pandangan Pemakai (View level) : Level ini merupakan level abstraksi data tertinggi yang menggambarkan hanya sebagian saja yang dilihat dan dipakai dari keseluruhan database, hal ini disebabkan beberapa pemakai database tidak membutuhkan semua isi database.
MANFAAT DATABASE
Sistem manajemen database dapat diartikan sebagai suatu program komputer yang digunakan untuk memasukkan, mengubah, menghapus, memanipulasi dan memperoleh data dengan praktis dan efisien. Adapun manfaat dari penggunaan database diantaranya adalah :
Meningkatkan integritas data, dimana data selalu dalam keadaan valid; hal ini hanya dapat terjadi bila data hanya berada dalam satu tempat,
Adanya independensi data, sifat yang memungkinkan perubahan struktur file tidak mempengaruhi program dan sebaliknya; juga dapat berarti bahwa data bersifat tidak bergantung pada data lain,
Adanya sekuritas data, yang bermanfaat untuk menghindari pengaksesan data oleh yang tidak berhak,
Penggunaan data menjadi lebih mudah, dimana pada umumnya sistem manajemen database (DataBase Management System = DBMS) menyediakan fasilitas query yang memudahkan user untuk memperoleh informasi.
Terkontrolnya kerangkapan data. Dalam basis data hanya mencantumkan satu kali saja field yang sama yang dapat dipakai oleh semua aplikasi yang memerlukannya.
Terpeliharanya keselarasan (kekonsistenan) data, Apabila ada perubahan data pada aplikasi yang berbeda maka secara otomatis perubahan itu berlaku untuk keseluruhan
Dapat dipakai secara bersama (shared), Data dapat dipakai secara bersama-sama oleh beberapa program aplikasi (secara batch maupun on-line) pada saat bersamaan.
Diterapkan standarisasi, Dengan adanya pengontrolan yang terpusat maka DBA dapat menerapkan standarisasi data yang disimpan sehingga memudahkan pemakaian, pengiriman maupun pertukaran data.
Data terjamin, DBA dapat memberikan batasan-batasan pengaksesan data, misalnya dengan memberikan password dan pemberian hak akses bagi pemakai (misal : modify, delete, insert, retrieve)
Integritas data, Jika kerangkapan data dikontrol dan kekonsistenan data dapat dijaga maka data menjadi akurat.
Keseimbangan (keselarasan) antara kebutuhan data yang berbeda dalam setiap aplikasi. Struktur basis data diatur sedemikian rupa sehingga dapat melayani pengaksesan data dengan cepat
Independence (kemandirian data)
KEKANGAN DALAM DATABASE
Data Redundancy
Pada file manual sering terjadi penyimpanan data yang sama pada lokasi yang terpisah (cross location) tidak dapat dihubungkan, kalaupun dapat hanya dihubungkan dengan petunjuk silang (cross reference). Data yang terpisah selain memakan banyak tempat, juga sukar diremajakan (up-date) sekaligus secara bersamaan. Permasalahan yang timbul dapat dilihat pada kasus berikut.
Kapuas Pontianak Bank, Pontianak, Kalimantan Barat, mempunyai kegiatan pelayanan nasabah dalam hal rekening tabungan, rekening cek, dan pinjaman. Yang pertama menggunakan otomatisasi sistem transaksi adalah rekening tabungan. Waktu itu bank membeli paket perangkat lunak komersial yang khusus didesain untuk institusi tabungan. Mereka tidak memakai sistem DBMS tetapi sistem file tradisonal. Sesudah dua tahun kegiatan tabungan otomatisasi, bank mulai mengotomatisasikan juga kegiatan deposito dan kegiatan peminjaman dengan membeli perangkat lunak dari perusahaan penjual yang sama. Masing-masing sistem berdiri sendiri-sendiri. Tidak lebih dari satu file yang dapat digunakan pada waktu bersamaan, dan juga tidak mungkin membuat hubungan antara data tersebut. Karena sistem berdiri sendiri-sendiri, maka masing-masing file berisikan data yang berlebihan (redundancy) satu sama lain. Nama nasabah, alamat, nomor telepon, dan nomor kartu penduduk terdapat tiga file bersangkutan. Karena itu, bila nasabah menggunakan layanan ketiga sistem tersebut, maka dua data dari beberapa file tersebut adalah redundancy.
Duplikasi data, data yang sama disimpan dalam beberapa file. Karena file-file dan program aplikasi disusun oleh programmer yang berbeda, sejumlah informasi mungkin memiliki duplikasi dalam beberapa file. Sebagai contoh nama mata kuliah dan sks dari mahasiswa dapat muncul pada suatu file memiliki record-record mahasiswa dan juga pada suatu file yang terdiri dari record-record mata kuliah. Kerangkapan data seperti ini dapat menyebabkan pemborosan tempat penyimpanan dan biaya akases yang bertambah. Disamping itu dapat terjadi inkonsistensi data. Misalnya, apabila terjadi perubahan jumlah sks mata kuliah, sedangkan perubahan hanya diperbaiki pada file mata kuliah dan tidak diperbaiki pada file mahasiswa. Hal ini dapat mengakibatkan kesalahan dalam laporan nilai mahasiswa.
Data Inconsistency
Duplikasi data akan mengakibatkan data menjadi tidak konsisten. Inkonsistensi data (data tidak konsisten) terjadi dikarenakan bila terjadi perubahan terhadap data maka data harus dirubah dibeberapa tempat, hal ini tentunya tidak efisien.
Data Terisolir (Isolation Data)
Karena data tersebar dalam berbagai file, dan file-file mungkin dalam format format yang berbeda, akan sulit menuliskan program aplikasi baru untuk mengambil data yang sesuai.
Data Integrity
Basis data berisi file yang saling berhubungan, masalah utama adalah bagaimana kaitan antar file tersebut terjadi meski diketahui bahwa file A terkait dengan file B, namun secara teknis ada field yang mengaitkan kedua file tersebut oleh karena itu field kunci tidak dapat diabaikan dalam merancang suatu basis data.
Aturan keintegritasan data :
Entity integrity
Nilai atribut primary key tidak boleh null (tidak dikenal)
Contoh:
PEGAWAI(NIP,Nama,Alm,Gaji,KdDiv)
NIP sebagai primary key tidak boleh bernilai null atau kosong atau tidak dikenal.
Referential integrity
Nilai atribut foreign key harus sssuai dengan nilai atribut rujukan (primary key) pada relasi lain.
Contoh:
PEGAWAI(NIP,Nama,Alm,Gaji,KdDiv)
DIVISI(KdDiv,Ket,Lokasi)
Atribut KdDiv sebagai foreign key pada relasi PEGAWAI Harus mempunyai nilai yang sesuai dengan rujukannya atribut KdDiv pada DIVISI.
Entity participation
Keharusan/ketidakharusan adanya keanggotaan dari suatu relationship, pada saat perancangan database.
Domain constraint
Domain merupakan sekumpulan nilai yang diizinkan untuk satu atau lebih dari satu atribut.
Enterprise constraint
Aturan yang dispesifikasikan oleh DBA atau pemakai.
Data Security
Yang dimasud dengan data security adalah suatu cara pengaman data bari berbagai gangguan, seperti pencurian data, perubahan data, pengerusakan data, dll.
Berikut ini adalah beberapa cara pengaman data dari sekian banyak cara pengaman data yang bisa dilakukan. Pada contoh dibawah ini akan diberikan contoh pengaman data pada Oracle, yaitu :
Grant security (system privilege dan object privilege)
Oracle grant security terdiri dari system privilege dan object privilege. System privilege memberikan hak akses kepada user untuk mengatur dan mengelola sistem database Oracle. Terdapat sekitar 80 system privilege yang ada di Oracle.
contoh :
sql> grant create any cluster to customer_role;
sql> grant select any table to fred;
sql> grant create any table to public;
sql> grant create tablespace to dba_role;
Object privilege merupakan hak akses yang diberikan kepada user untuk melakukan beberapa operasi pada beberapa objek database seperti; tabel, view, sequence, atau procedure.
contoh :
sql> grant select, insert on customer to fred, mary, joe;
sql> grant insert on order_table to update_role;
sql> grant all on customer to fred;
sql> grant select on customer_view to mary;
Role-based grant security
Role-based grant security pada dasarnya adalah kumpulan dari beberapa privilege yang dikumpulkan menjadi satu. Ini merupakan salah satu cara untuk memudahkan dalam pemberian hak akses kepada user.
contoh :
sql> create role system_admin;
sql> grant select, update on customer to system_admin;
sql> grant select on item_table to system_admin;
sql> grant system_admin to user 1, user 2, user 3;
Grant execute security
Oracle menyediakan kemampuan untuk membuat hak akses dengan menciptakan suatu program tertentu melalui store procedure dan bahasa PL/SQL.
Secara spesifik sdministrator dapat berkreasi dalam membuat hak akses user. Secara keseluruhan grant execute security memiliki cukup perbedaan dengan traditional grant security yang telah dibahas sebelumnya.
DAFTAR PUSTAKA
dotnet.netindonesia.net/?0::756 – 5
kpjaya.files.wordpress.com/2007/03/baran-2006.pdf
lecturer.eepis-its.edu/~tessy/lecturenotes/db1/Bab1.pd osen.stieperbanas.ac.id/user/99070/bahan/Kuliah1-sim.doc
pti.stis.ac.id/wp-content/uploads/2007/12/pertemuan-06-07.pp
www.master.web.id/mwmag/issue/04/content/fokus/fokus.html - 52k
www.cert.or.id/~budi/courses/el695/projects/dian.doc
www.cs.ui.ac.id/WebKuliah/citra/2005/citra13.ppt
www.hilman.net/security.html - 23k
www.mti.ugm.ac.id/~adji/courses/resources/career/Thesis1-53.do
Masih tentang UNF
BASIS DATA I
RELASI UNF KARENA :
Non Single Value
-
NIM
Nama_Mahasiswa
Kode_MK_1
SKS_1
Kode_MK_2
SKS_2
091901
Cloud Strife
BD-1
2
BD-2
2
091902
Tifa Lockheart
AP-1
2
AP-2
2
091903
Vincent Valentine
KK-1
3
KK-2
3
non single value
Non Atomic
-
NIP
Nama_Pegawai
Tempat_tanggal_lahir
12345
Yuffei Kisaragi
Sleman, 19 Februari 1980
12346
Squall Leonheart
Bogor, 20 Desember 1983
12347
Rinoa Heartilly
Jakarta, 25 Semtember 1985
non atomic
Non Flat File
-
ISBN
Judul
Halaman
Topik
979-533-791-2
PHP
631
Pemrograman
979-533-791-2
PHP
631
Internet
non Flat File
RELASI TERBENTUNYA 1NF, 2NF & 3NF
Non Single Value
Bentuk UNF
-
NIM
Nama_Mahasiswa
Kode_MK_1
SKS_1
Kode_MK_2
SKS_2
091901
Cloud Strife
BD-1
2
BD-2
2
091902
Tifa Lockheart
AP-1
2
AP-2
2
091903
Vincent Valentine
KK-1
3
KK-2
3
Bentuk 1NF
-
NIM
Nama_Mahasiswa
Kode_MK
SKS
091901
Cloud Strife
BD-1
2
091901
Cloud Strife
BD-2
2
091902
Tifa Lockheart
AP-1
2
091902
Tifa Lockheart
AP-2
2
091903
Vincent Valentine
KK-1
3
091903
Vincent Valentine
KK-2
3
Non Atomic
Bentuk UNF
-
NIP
Nama_Pegawai
Tempat_tanggal_lahir
12345
Yuffei Kisaragi
Sleman, 19 Februari 1980
12346
Squall Leonheart
Bogor, 20 Desember 1983
12347
Rinoa Heartilly
Jakarta, 25 Semtember 1985
Bentuk 1NF
-
NIP
Nama_Pegawai
Tempat_Lahir
Tanggal_Lahir
12345
Yuffei Kisaragi
Sleman
19 Februari 1980
12346
Squall Leonheart
Bogor
20 Desember 1983
12347
Rinoa Heartilly
Jakarta
25 Semtember 1985
Non Flat File
Bentuk 1NF
-
ISBN
Judul
Halaman
Topik
979-533-791-2
PHP
631
Pemrograman
979-533-791-2
PHP
631
Internet
Bentuk 2NF
Tabel Buku
-
ISBN
Judul
Halaman
979-533-791-2
PHP
631
979-533-791-2
PHP
631
Tabel Topik
-
ISBN
Topik
979-533-791-2
Pemrograman
979-533-791-2
Internet
Bentuk 3NF
Tabel Buku
-
ISBN
Judul
Halaman
979-533-791-2
PHP
631
979-533-791-2
PHP
631
Tabel Kode Buku
-
Kode_buku
Topik
P05
Pemrograman
I12
Internet
Tabel Topik
-
ISBN
Topik
979-533-791-2
Pemrograman
979-533-791-2
Internet
DIAGRAM DATA DEPENDENCY
Non Single Value
NIM ...................................................... Kode_MK
Nama_mahasiswa SKS
Non Atomic
NIP
Nama_pegawai Tempat_lahir Tanggal_Lahir
Non Flat File
ISBN ........................................................... Kode_buku
Judul Halaman Topik