TUGAS PEMROGRAMAN VISUAL IMPLEMENTASI BASIS DATA RELASIONAL PADA MICROSOFT ACCESS
DISUSUN OLEH :
NAMA
: Muhammad Albarrozi
NIM
: 09081003015
Kelas
: SI4A
FAKULTAS ILMU KOMPUTER UNIVERSITAS SRIWIJAYA 2009-2010 1
DAFTAR ISI Halaman
DAFTAR DAFTAR ISI………… ISI………………… ……………… ……………… ……………… ……………… ……………… ……………. ……. 2
1. Basis Basis Data… Data…………… …………….... …......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... ......... ....
3
2. Micros Microsoft oft Access Access…… ………… ……..… ..…….… ….………… …………… ………… …………… …………. ….
3
3. Basis Data Relasional………..… ……..……… ………… ………… ………… ………… ………… ………… ……... ... 8 4. Contoh Implementasi Basis Data pada Ms. Access……..…………… 8 5. IMPE IMPELE LEME MENT NTAS ASII BAS BASIS IS DATA DATA & SQL SQL PADA PADA MICR MICROS OSOF OFT T ACC ACCES ESS… S…
12
DAFT DAFTAR AR PUST PUSTAKA… AKA……. …... ..……… …………… ………… …………… …………… …………… ………..
19
2
1. Basisdata Basis data dapat didefinisikan dalam sejumlah sudut pandang, seperti menurut Connolly (2002,p14), definisi basis data adalah kumpulan data yang dihubungkan secara bersama-sama, dan gambaran dari data yang dirancang untuk memenuhi kebutuhan informasi dari suatu organisasi. Berbeda dengan sistem file yang menyimpan data secara terpisah, pada basis data data tersimpan secara terintegrasi. Basis data bukan menjadi milik dari suatu departemen tetapi sebagai sumber daya perusahaan yang dapat digunakan bersama.
Menurut Date (1990,p5), definisi dari basis data adalah kumpulan terintegrasi dari file yang merupakan representasi data dari suatu model enterprise.
Sedangkan menurut Fathansyah (1999,p2), basis data adalah : o
Himpunan kelompok data (arsip) yang saling berhubungan yang diorganisasi sedemikian rupa agar kelak dapat dimanfaatkan kembali dengan cepat dan mudah.
o
Kumpulan data yang saling berhubungan yang disimpan secara bersama sedemikian rupa dan tanpa pengulangan (redudansi) yang tidak perlu, untuk memenuhi berbagai kebutuhan.
o
Kumpulan file/ tabel/ arsip yang saling berhubungan yang disimpan dalam media penyimpanan elektronis.
2. Microsoft Access Microsoft Access (atau Microsoft Office Access) adalah sebuah program aplikasi basis data komputer relasional yang ditujukan untuk kalangan rumahan dan perusahaan kecil hingga menengah. Aplikasi ini merupakan anggota dari beberapa aplikasi Microsoft Office, selain tentunya Microsoft Word, Microsoft Excel, dan Microsoft PowerPoint. Aplikasi ini menggunakan mesin basis data Microsoft Jet Database Engine, dan juga menggunakan tampilan grafis yang intuitif sehingga memudahkan pengguna. Versi terakhir adalah Microsoft Office Access 2007 yang termasuk ke dalam Microsoft Office System 2007 . Microsoft Access dapat menggunakan data yang disimpan di dalam format Microsoft Access, Microsoft Jet Database Engine, Microsoft SQL Server , Oracle
3
Database, atau semua kontainer basis data yang mendukung standar ODBC. Para pengguna/ programmer yang mahir dapat menggunakannya untuk mengembangkan perangkat lunak aplikasi yang kompleks, sementara para programmer yang kurang mahir dapat menggunakannya untuk mengembangkan perangkat lunak aplikasi yang sederhana. Access juga mendukung teknik-teknik pemrograman berorientasi objek, tetapi tidak dapat digolongkan ke dalam perangkat bantu pemrograman berorientasi objek.
Sejarah Microsoft merilis Microsoft Access 1.0 pada bulan November 1992 dan dilanjutkan dengan merilis versi 2.0 pada tahun 1993. Microsoft menentukan spesifikasi minimum untuk menjalankan Microsoft Access 2.0 adalah sebuah komputer dengan sistem operasi Microsoft Windows 3.0, RAM berkapasitas 4 megabyte (6 megabyte lebih disarankan) dan ruangan kosong hard disk yang dibutuhkan 8 megabyte (14 megabyte lebih disarankan). Versi 2.0 dari Microsoft Access ini datang dengan tujuh buah disket floppy 3½ inci berukuran 1.44 megabyte. Perangkat lunak tersebut bekerja dengan sangat baik pada sebuah basis data dengan banyak record tapi terdapat beberapa kasus di mana data mengalami kerusakan. Sebagai contoh, pada ukuran basis data melebihi 700 megabyte sering mengalami masalah seperti ini (pada saat itu, memang hard disk yang beredar masih berada di bawah 700 megabyte). Buku manual yang dibawanya memperingatkan bahwa beberapa kasus tersebut disebabkan oleh driver perangkat yang kuno atau konfigurasi yang tidak benar. Nama kode (codename) yang digunakan oleh Access pertama kali adalah Cirrus yang dikembangkan sebelum Microsoft mengembangkan Microsoft Visual Basic, sementara mesin pembuat form antarmuka yang digunakannya dinamakan dengan Ruby. Bill Gates melihat purwarupa ( prototype) tersebut dan memutuskan bahwa komponen bahasa pemrograman BASIC harus dikembangkan secara bersama-sama sebagai sebuah aplikasi terpisah tapi dapat diperluas. Proyek ini dinamakan dengan Thunder. Kedua proyek tersebut dikembangkan secara terpisah, dan mesin pembuat form yang digunakan oleh keduanya tidak saling cocok satu sama lainnya. Hal tersebut berakhir saat Microsoft merilis Visual Basic for Applications (VBA).
Penggunaan Microsoft Access digunakan kebanyakan oleh bisnis-bisnis kecil dan menengah, di dalam sebuah organisasi yang kecil bahkan mungkin juga digunakan oleh perusahaan yang cukup besar, dan juga para programmer untuk membuat sebuah sistem buatan sendiri untuk menangani pembuatan dan manipulasi data. Access juga dapat digunakan sebagai sebuah basis data untuk aplikasi Web dasar yang disimpan di dalam server yang menjalankan Microsoft Internet Information Services (IIS) dan menggunakan Microsoft Active Server Pages (ASP). Meskipun demikian, penggunaan Access kurang disarankan, mengingat telah ada Microsoft SQL Server yang memiliki kemampuan yang lebih tinggi.
4
Beberapa pengembang aplikasi profesional menggunakan Microsoft Access untuk mengembangkan aplikasi secara cepat (digunakan sebagai Rapid Application Development / RAD tool ), khususnya untuk pembuatan purwarupa untuk sebuah program yang lebih besar dan aplikasi yang berdiri sendiri untuk para salesman. Microsoft Access kurang begitu bagus jika diakses melalui jaringan sehingga aplikasi-aplikasi yang digunakan oleh banyak pengguna cenderung menggunakan solusi sistem manajemen basis data yang bersifat klien/server . Meskipun demikian, tampilan muka Access ( form, report , query, dan kode Visual Basic) yang dimilikinya dapat digunakan untuk menangani basis data yang sebenarnya diproses oleh sistem manajemen basis data lainnya, seperti halnya Microsoft Jet Database Engine (yang secara default digunakan oleh Microsoft Access), Microsoft SQL Server , Oracle Database, dan beberapa produk lainnya yang mendukung ODBC.
Fitur Salah satu keunggulan Microsoft Access dilihat dari perspektif programmer adalah kompatibilitasnya dengan bahasa pemrograman Structured Query Language (SQL); query dapat dilihat dan disunting sebagai statemen-statemen SQL, dan statemen SQL dapat digunakan secara langsung di dalam Macro dan VBA Module untuk secara langsung memanipulasi tabel data dalam Access. Para pengguna dapat mencampurkan dan menggunakan kedua jenis bahasa tersebut (VBA dan Macro) untuk memprogram form dan logika dan juga untuk mengaplikasikan konsep berorientasi objek. Microsoft SQL Server Desktop Engine (MSDE) 2000, yang merupakan sebuah versi mini dari Microsoft SQL Server 2000, dimasukkan ke dalam Office XP Developer Edition dan dapat digunakan oleh Microsoft Access sebagai alternatif dari Microsoft Jet Database Engine. Tidak seperti sebuah sistem manajemen basis data relasional yang komplit, Microsoft JET Database Engine tidak memiliki fitur trigger dan stored procedure. Dimulai dari Microsoft Access 2000 yang menggunakan Microsoft Jet Database Engine versi 4.0, ada sebuah sintaksis yang mengizinkan pembuatan kueri dengan beberapa parameter, dengan sebuah cara seperi halnya sebuah stored procedure, meskipun prosesur tersebut dibatasi hanya untuk sebuah pernyataan tiap prosedurnya. Access juga mengizinkan form untuk mengandung kode yang dapat dieksekusi ketika terjadi sebuah perubahan terhadap tabel basis data, seperti halnya trigger , selama modifikasi dilakukan hanya dengan menggunakan form tersebut, dan merupakan sesuatu hal yang umum untuk menggunakan kueri yang akan diteruskan ( pass-through dan teknik lainnya di dalam Access untuk menjalankan stored procedure di dalam RDBMS yang mendukungnya. Dalam berkas Access Database Project (ADP) yang didukung oleh Microsoft Access 2000 dan yang selanjutnya, fitur-fitur yang berkaitan dengan basis data berbeda dari versi format/struktur data yang digunakan Access (*.MDB), karena jenis berkas ini dapat membuat koneksi ke sebuah basis data MSDE atau Microsoft SQL Server, ketimbang menggunakan Microsoft JET Database Engine. Sehingga, dengan menggunakan ADP, adalah
5
mungkin untuk membuat hampur semua objek di dalam server yang menjalankan mesin basis data tersebut (tabel basis data dengan constraints dan trigger , view, stored procedure, dan UDF ). Meskipun demikian, yang disimpan di dalam berkas ADP hanyalah form, report , macro, dan modul, sementara untuk tabel dan objek lainnya disimpan di dalam server basis data yang membelakangi program tersebut.
Pengembangan dengan Access Access mengizinkan pengembangan yang relatif cepat karena semua tabel basis data, kueri, form, dan report disimpan di dalam berkas basis data miliknya (*.MDB). Untuk membuat Query, Access menggunakan Query Design Grid, sebuah program berbasis grafis yang mengizinkan para penggunanya untuk membuat query tanpa harus mengetahui bahasa pemrograman SQL. DI dalam Query Design Grid, para pengguna dapat memperlihatkan tabel basis data sumber dari query, dan memilih field-field mana yang hendak dikembalikan oleh proses dengan mengklik dan menyeretnya ke dalam grid . Join juga dapat dibuat dengan cara mengklik dan menyeret field-field dalam tabel ke dalam field dalam tabel lainnya. Access juga mengizinkan pengguna untuk melihat dan memanipulasi kode SQL jika memang diperlukan. Bahasa pemrograman yang tersedia di dalam Access adalah Microsoft Visual Basic for Applications (VBA), seperti halnya dalam beberapa aplikasi Microsoft Office. Dua buah pustaka komponen Component Object Model (COM) untuk mengakses basis data pun disediakan, yakni Data Access Object (DAO), yang hanya terdapat di dalam Access 97 , dan ActiveX Data Objects (ADO) yang tersedia dalam versi-versi Access terbaru.
INDEKS-INDEKS YANG ADA DALAM MICROSOFT ACCESS
1.Indeks Primer (Primary Index) Indeks Primer pada setiap tabel hanya ada satu dan hampir selalu berasal (ditentukan) dari key yang telah kita tetapkan di sebuah entitas/relasi. Indeks Primer yang baik terdiri atas field-field dengan kriteria sebagai berikut: Field yang menjadi komponen Indeks Primer harus bersifat mandatory (datanya tidak boleh kosong atau berisi nilai null). Keseluruhan nilai Indeks Primer bersifat unik. Nilai-nilainya lebih permanen (idealnya, nilai-nilai dalam field yang menjadi Indeks Primer tidak pernah berubah). Berukuran kecil (pendek) dan dengan jumlah field minimal (sedikit).
2.Indeks Sekunder (Secondary Index) Indeks Sekunder digunakan untuk mendukung/melengkapi keberadaan Indeks Primer yang sengaja dibuat untuk suatu tabel dengan alasan untuk 6
mempermudah/mempercepat berbagai cara pengaksesan kesuatu tabel. Sebagaimana Indeks Primer, jumlah Indeks Sekunder yang dapat dibuat untuk setiap tabel lebih dari satu. Nilai-nilai field yang menjadi [pembentuk Indeks Sekunder ini juga tidak disyaratkan untuk selalu bersifat unik, karena fungsinya yang hanya untuk menmpermudah pencarian bukan sebagai pengidentifikasi keunikan.
STRUKTUR PENYIMPANAN (STORAGE STRUCTURE) Struktur penyimpanan juga berpengaruh dalam menentukan kecepatan akses dan manipula data yang kita gunakan. Akan tetapi jika DBMS yang kita pilih ternyata menyediakan pilihan-pilihsn struktur penyimpanan tersebut, maka hal-hal berikut dapat dipertimbangkan untuk menentukan pilihan : Heap merupakan struktur penyimpanan yang paling sedrhana dan karena itu paling hemat dalam membutuhkan ruang penyimpanan. Dengan struktur ini, setiap baris data disusun berdasarkan kronologis penyimpanannya. Data (record)yang pertama disimpan akan ditempatkan diposisi awal ruang penyimpanan, dan begitu seterusnya. Pengubahan data tidak akan mengubah urutan record tersebut. Hash merupakan struktur penyimpanan yang menempatkan baris-baris data berdasarkan nilai alamat fisik yang diperoleh dari hasil perhitungan (penggunaan fungsi Hashing) terhadap nilai key-nya. Jadi, jika sebuah baris data akan disimpan, maka DBMS akan menerapkan fungsi tersebut terhadap nilai key (field yang menjadi key) pada baris tersebut. Hasilnya adalah sebuah nilai yang menunjukkan alamat fisik dimana baris data tersebut akan di tempatkan. Sekuensial Berindeks merupakan struktur penyimpanan yang menempatkan data dengan urutan tertentu didalam tabel (yaitu berdasarkan indeks Primer-nya). Baris data yang memiliki indeks Primer paling kecil dibanding baris data yang lain akan ditempatkan diawal ruang penyimpanan tabel walaupun ia disimpan belakangan. Oleh karena itu tabel dengan struktur penyimpanan ini akan butuh waktu yang lebih lama (untuk memposisikan kembali record-recordnya) jika terjadi penambahan data satu atau pengubahan yang menyagkut nilai Indeks primer-nya.
7
3. Basis Data Relasional Basis Data Relasional menggunakan tabel dua dimensi yang terdiri atas baris dan kolom untuk memberi gambaran sebuah berkas data. Keuntungan Basis Data Relasional adalah : 1.
Bentuknya sederhana
2.
Mudah untuk melakukan berbagai operasi data
Istilah dalam Basis Data Relasional : Database : Sekumpulan data yang saling berhubungan untuk mencapai suatu tujuan. Data
: fakta-fakta yang dapat disimpan dan mempunyai arti tertentu
Tabel
: Tempat untuk menyimpan data, tabel terdiri dari field dan record
Field
: disebut juga dengan kolom, yaitu bagian tabel tempat menyimpan sebuah item data.
Record
: disebut juga dengan baris, yaitu satu bagian informasi yang disimpan dalam tabel, misal data seorang mahasiswa akan disimpan dalam satu record yang terdiri dari beberapa kolom/field.
4. Contoh Implementasi Basis Data pada Ms. Access
8
Sebuah penerbitan buku “Gerbang Ilmu” bermaksud membangun sistem basisdata, dengan tujuan untuk memudahkan pembukuan. Dengan berpedoman pada faktur penjualan dibawah ini: FAKTUR PENJUALAN Nomor : 0065 Kode Pelanggan : A005 Tanggal : 12-Jul-07 Nama : TB. Tinta Emas Jatuh Tempo : 12-Sept-07 Kode Buku Judul Pengaran Buku g D-0123 Menggali Heri Potensi Prabowo, Diri MBA A-0154
Petualang an Empat Sahabat
Lery Wenfrie
Harga Rp 28.500,-
Eks 50
Rp. 19.500
100
Total Harga Rp. 1.425.000, Rp. 1.950.000, -
1. NORMALISASI a. Tabel Bentuk Tidak Normal (Unormal Form) Dari data faktur penjualan tersebut, jika ditampilkan dalam bentuk satu relasi / struktur tabel adalah : No. Faktur
Tgl.
0065
12-Jul07
Jatuh Temp o 12Sept07
Kd. Pelan ggan A-005
Nm. Pelan ggan TB. Tinta Emas
Kd. Buku D00123 A00154
Jdl. Buku Meng gali Poten si Diri Petual angan Empat Sahab at
Peng arang
Harg a
Eks.
Heri Prabo wo, MBA Lery Wenfr ie
28.50 0,19.50 0,-
50 100
Total Harg a 1.425. 000,1.950. 000,-
Struktur tabel tersebut merupakan bentuk belum normal, sebab masih ada field/atribut yang kosong. Diperlukan langkah-langkah normalisasi, untuk mendapatkan struktur tabel-tabel yang normal.
b. Tabel Bentuk Normal Pertama (1NF) No. Faktur
Tgl.
0065
12-Jul07
0065
12-Jul07
Jatuh Temp o 12Sept07
Kd. Pelan ggan A-005
Nm. Pelan ggan TB. Tinta Emas
12Sept07
A-005
TB. Tinta Emas
Kd. Buku
Jdl. Buku
Peng arang
Harg a
Eks.
D00123
Meng gali Poten si Diri Petual angan Empat Sahab
Heri Prabo wo, MBA Lery Wenfr ie
28.50 0,-
50
19.50 0,-
100
A00154
Total Harg a 1.425. 000,-
1.950. 000,-
9
at
c. Tabel Bentuk Normal Kedua (2NF) Dari tabel bentuk normal pertama dapat dipecah menjadi: 1). Tabel Pelanggan *) Kd. Pelanggan
Nm. Pelangg an TB. Tinta Emas
A-005
2). Tabel Buku *) Kd. Buku D-0123
A-0154
Jdl. Buku Mengg ali Potensi Diri Petuala ngan Empat Sahaba t
Penga rang Heri Prabow o, MBA
Harga
Lery Wenfri e
19.500, -
Tgl.
Jatuh Temp o 12Sept07 12Sept07
**) Kd. Pelan ggan A-005
28.500, -
3). Tabel Faktur *) No. Faktur 0065
12-Jul07
0065
12-Jul07
A-005
**) Kd. Buku
Eks.
Total Harga
D00123
50
1.425.0 00,-
D00154
100
1.950.0 00,-
d. Tabel Bentuk Normal Ketiga (3NF) Dari tabel bentuk normal kedua, dapat dibentuk menjadi bentuk normal ketiga dengan komposisi tabel sebagai berikut: 1). Tabel Pelanggan *) Kd. Pelanggan A-005
Nm. Pelangg an TB. Tinta Emas
2). Tabel Buku *) Kd. Buku D-00123
Jdl. Buku Mengg ali Potensi
Penga rang Heri Prabow o, MBA
Harga 28.500, -
10
Diri A-00154
Petuala ngan Empat Sahaba t
Lery Wenfri e
19.500, -
3). Tabel Faktur *) No. Faktur 0065
Tgl.
Jatuh Tempo
12-Jul07
12Sept-07
**) Kd. Pelang gan A-005
4). Tabel Transaksi *) No. Faktur 0065 0065
**) Kd. Buku D00123 D00154
Eks.
Total Harga
50
1.425. 000,1.950. 000,-
100
Berdasarkan struktur tabel bentuk normal ketiga, dapat disimpulkan entitas penyusun basisdata sebagai berikut:
11
2. Diagram Hubungan antar Entitas / Entity Relation Diagram (ERD)
5. IMPELEMENTASI BASIS DATA & SQL PADA MICROSOFT ACCESS a. Membuat Basisdata File New Blank database
Isi file name : “Tgs_Simbada”
Create
12
b. Membuat Tabel/Entitas 1). Membuat tabel “Pelanggan” Pilih Tables Create table in design view
Isi field name, data type
Save
13
Tabel : “Pelanggan”
-
Field Name : Kode_Pelanggan (Kunci Primer) Data type : TEXT Field size : 6
-
Field Name : Nama Data type : TEXT Field size : 50
-
Field Name : Alamat Data type : TEXT Field size : 150 Field Name : Harga Data type : CURRENCY format : CURRENCY
-
2). Membuat tabel “Buku” Pilih Tables Create table in design view Tabel : “Buku”
Isi field name, data type
Save
14
Tabel : “Buku”
-
Field Name : Kode_Buku (Kunci Primer) Data type : TEXT Field size : 6
-
Field Name : Judul Data type : TEXT Field size : 50
-
Field Name : Pengarang Data type : TEXT Field size : 20
3). Membuat tabel “Faktur”
15
Pilih Tables Create table in design view
Isi field name, data type
Save
Tabel : “Faktur” - Field Name : No_Faktur (Kunci Primer) Data type : DATA TEXT Field size : 6 -
Field Name : Tanggal Data type : DATE/TIME Format : MEDIUM DATE
-
Field Name : Jatuh Tempo Data type : DATE/TIME Format : MEDIUM DATE
-
Field Name : Kode_Pelanggan (Kunci Tamu) Data type : TEXT Field size : 6
16
4). Membuat tabel “Transaksi” Pilih Tables Create table in design view
Isi field name, data type
Save
Tabel : “Transaksi” - Field Name : No_Faktur (Kunci Primer) Data type : DATA TEXT Field size : 6
-
Field Name : Kode_Buku (Kunci Tamu) Data type : DATA TYPE Field size : 6
-
Field Name : Jumlah Data type : NUMBER Field size : Long Integer
c. Membuat hubungan antar tabel - Pilih Tools Relationship Klik kanan pada jendela Relationships Add Table Close
Show Table
17
-
-
Drag field No_Faktur pada tabel Faktur ke field No_Faktur pada tabel Transaksi Drag field Kode_Pelanggan pada tabel Pelanggan ke field Kode_Pelanggan pada tabel Faktur. Drag field Kode_Pelanggan pada tabel Pelanggan ke field Kode_Pelanggan pada tabel Faktur. Drag field Kode_Buku pada tabel Buku ke field Kode_Buku pada tabel Transaksi
Relasional Key
18
Super Key Satu atribut / kumpulan atribut yang secara unik mengidentifikasi sebuah tupel di dalam relasi Candidate Key Atribut di dalam relasi yang biasanya mempunyai nilai unik Primary Key Candidate key yang dipilih untuk mengidentifikasikan tupel secara unik dalam relasi Alternate Key Candidate key yang tidak dipilih sebagai primary key Foreign Key Atribut dengan domain yang sama yang menjadi kunci utama pada sebuh relasi tetapi pada relasi lai atribut tersebut hanya sebagai atribut biasa.
DAFTAR PUSTAKA
19
http://expresiaku.wordpress.com/2009/02/23/306/ http://one.indoskripsi.com/node/8272
http://www.docstoc.com/docs/DownloadDoc.aspx?doc_id=26863518 http://id.wikipedia.org/wiki/Microsoft_Access
20