1st Meeting

Yuk, Bangun Database… (By: Priskila Saragih, 2K)

Lalala, hai kini saya kemblai nge-blog lagi, tapi kali ini bukan curhat atau mau cerita apa-apa, tapi saya mau kasih tau (bantu anda-anda semua untuk belajar membangun sebuah Database.)

Hitung-hitung biar berhasil UTS nanti, jadi saya nge-publish ini biar temen-temen semua pada tahu dan bisa membangun database.. Sebelumnya di BPS Program yang dipakai dan diajarkan di STIS untuk database adalah FoxPro, namun kenyataannya di daerah banyak yang lebih sering memakai Ms.Access. Jadi selagi saya ngapalin dan inget-inget pelajaran buat UTS, saya mau ngajarin dikit soal Database…

Daripada banyak cerita, langsung aja ya, check this out..

1st Meeting

Bersyukur banget karena yang ngajarin saya Pemrograman Terstruktur kali ini adalah dosen yang jelas menerangkan setiap pelajaran yang diberikannya. Bapak ini adalah Dosen saya waktu Tingkat 1 dulu Mata Kuliah PTI (Pengantar Teknologi Informasi)

Ngomong-ngomong soal Database, apa sih yang ada di benak kamu semuanya? Data? Trus-trus apalagi dong yang kamu tahu?

Database itu adalah sekumpulan data yang disatukan dalam 1 organisasi dan dapat diakses kapan saja (bersifat persistent). Data yang dimaksud di sini itu adalah data yang merupakan fakta yang telah diketahui baik berupa teks, grafik, gambar, suara maupun video.

Tapi, ga semua kumpulan data itu disebut database… Kenapa gitu?

Soalnya database itu adalah kumpulan data yang saling berhubungan / memiliki relasi tertentu. Jadi, ga semua kumpulan data itu merupakan database… Kalo ga berhubungan, itu bukan database. Okok J

Lah, terus ada lagi tuh yang namanya DBMS..

Apaan sih itu? DBMS adalah Database Management System. Eh, tapi jangan dijawab begini aja ya. Langsung disalahin sama dosen… wakakak 😀

DBMS adalah sekumpulan hardware dan software yang digunakan untuk mendefinisikan dan mengatur suatu database sehingga dapat diakses oleh penggunanya dan dibangun dengan 2 tujuan, yaitu:

  1. Menambahkan, menghapus dan meng-update data dalam database
  2. Untuk menyediakan cara tampilan data dalam database

1

Trus, dimana sih biasanya kita menggunakan Database itu?

Database biasa digunakan di tempat-tempat berikut:

  • Corporate Data
  • Banking Systems

Menghitung pemasukan dan pengeluaran. Kredit dan Debet

  • Stock Exchange

Untuk yang ini, kita harus punya data Time Seriesnya, jadi data yang udah lama (dulu) harus tetep disimpan supaya bisa kita lihat trendnya dari tahun ke tahun itu bagaimana

  • Airline system, ini terbagi 2, yaitu:
  • Di bandara

Kita bisa mengetahui jadwal penerbangan

  • Di pesawat terbang

Kita bisa mengetahui berapa banyak sih penumpang yang naik ke pesawat tersebut, dan berapa siapa aja sih yang jadi penumpangnya

  • Rumah Sakit

Mau lihat daftar pasien, jadi pasien 20 tahun lalu di Rumah Sakit tersebut gak boleh hilang datanya, meskipun udah berlalu

  • Data Warehouse

Misalnya kita mau tahu di Swalayan waktu lebaran tentang kenaikan pembelian kue. Dari data yang ada, kita bisa analisis, untuk apa? Untuk tentukan harga kuenya, untuk mengetahui berapa banyak jumlah kue yang mau diproduksi, dlsbnya.

Sedikit info ya,… kalo di Database itu Baris = Record dan Kolom = Field

Lantas, kenapa kita harus pelajarin database la?

Soalnya ada 4 alasan kuat untuk itu:

  1. Penggunaanya sangat luas.. itu kayak yang udah saya jelasin tadi loh…
  2. Merupakan bagian terbanyak dari solusi kebanyakan software
  3. Sangat dicari orang yang bisa mengelola data
  4. Menarik. What? Menarik?

Iya, soalnya init uh merupakan campuran dari kebutuhan dan metode yang berbeda untuk data.

 

Contohnya ya:

5

Tabel diatas adalah tabel daftar buku di suatu perpusatakaan yang memuat semua atribut yang ada… Tabel itu kita panggil aja Single table atau Flat

 

Kenapa kita menggunakan “ a relational-database design”?

Kenapa flat yang diatas tadi harus dipisah-pisah.? Karena, kalo semuanya disatukan akan jadi sangat complicated baik dari sisi jumlahnya, maupun kompleksitasnya…

Contohnya: SIPADU MAHASISWA dan SIPADU DOSEN.

Akan jadi cukup rumit bila keduanya digabungkan. Ya kan?

3

Ada lagi nih beberapa istilah dasar dalam DBMS yang wajib, kudu dan harus diketahui sebelum melangkah ke praktek 😀 hehehe

  • Entitas (Entity)

Sekumpulan objek yang memiliki karakteristik yang sama, namun dapat dibedakan satu sama lain. Objek ini dapat berupa orang, tempat, benda maupun kejadian. Contohnya: buku

  • Entity Class

Sekumpulan Entitas berdasarkan jenis tertentu. Jadi entity class dari buku tadi misalnya semua buku yang terdapat di unit pemilik database tersebut

  • Entity Set

Merupakan deskripsi lengkap mengenai suatu entitas. Contohnya buku, deskripsi lengkapnya ada ISBN, judul buku dan harganya

  • Atribut

Merupakan deskripsi data yang bisa mengidentifikasi entitas

Contoh : Penulis buku, atributnya ada ID, Nomor telepon dll

  • Field

Lokasi penyimpanan untuk salah satu elemen atribut

  • Record

Kumpulan dari field yang saling berhubungan satu sama lain.

Record mempunyai ukuran yang dinyatakan dalam byte.Menurut jenisnya, Record dibedakan mejadi 2, yaitu

  • Fixed length recod

Panjang record ditentukan dan bersifat tetap. Sederhana dalam pemrogramannya, namun karena begitu besar kapasitasnya, memungkinkan banyaknya ruang kosong di record tersebut.

  • Variable length record

Panjang record tidak ditentukan sebelumnya, lebih hemat tempat, namun rumit dalam pemrogramannya.

  • File

Kumpulan dari record yang menggambarkan himpunan entitas.

File ini disimpan dalam media penyimpanan sekunder. Beberapa karakteristik file, yaitu:

  • Persistence

Bertahan lama sehingga dapat diakses oleh penggunanya di masa yang akan datang.

  • Shareability

Dapat digunakan bersama oleh pengguna dan program.

  • Size

File memiliki ukuran yang relative besar. Operasi dalam file ada 2, yaitu: Model proses yang terbagi atas Batch yaitu ketika proses dilakukan secara secara kelompok atau Group dan Iterative, yaitu dilakukan satu per satu (record per record). Operasi yang kedua adalah Model Operasi. Model Operasi ini terbagi atas Create (jika berkas dibuat dengan membuat struktur berkas terlebih dahulu) dan update ( memperbarui berkas) dengan cara insert (penyisipan), delete (menghapus record) dan modify (perbaikan field).

  • Basis Data

Kumpulan file yang digunakan oleh Program Aplikasi serta membentuk hubungan tertentu, misalnya antara record dengan record.

  • Key

Elemen record yang dipakai untuk menemukan record tersebut pada waktu diakses. Terbagi atas 5, yaitu:

  • Primary Key

Merupakan Field yang mengidentifikasi suatu record dalam file dan bersifat unik.

  • Secondary Key

Merupakan suatu Field yang mengidentifikasi suatu record dalam file dan bersifat tidak unik (biasanya disebut Key saja)

  • Candidate Key

Merupakan field yang biasa dipilih sebagai primary key.

  • Composite Key

Merupakan Primary Key yang dibentuk dari beberapa field

  • Foreign Key

Merupakan Field yang bukan key, tapi merupakan key di file data yang lain

Ada juga istilah Superkey (Field yang mengidentifikasi entitas secara unik baik itu primary key maupun yang lainnya)

  • Retrieval

Merupakan pengaksesan sebuah berkas dengan tujuan untuk mendapatkan informasi. Terbagi 2, yaitu:

  • Comprehension Retrieval

Mendapatkan informasi dari seluruh record dalam berkas

  • Selective Retrieval

Mendapatkan informasi dari record tertentu dalam berkas

  • Maintenance

Memperbaiki program dalam mengakses berkas tersebut. Dapat dilakukan dengan 2 cara, yaitu:

  • Restructuring

Mengubah struktur berkas

  • Reorganizing

Mengubah organisasi suatu berkas dari organisasi berkas yang satu ke organisasi berkas yang lain.

Wah, ternyata banyak juga ya bagian dari database ini… Oke deh, sekarang kita bakalan lanjut lagi ya…

Nah, terus apa perbedaannya Relational Database  dan Single flat table database???

Ini dia perbedaannya

Single flat database:

  • Data disimpan sebagai records dalam file reguler
  • Records biasanya memiliki struktur sederhana  dan jumlah field tertentu
  • Sudah mendukung pengindeksan fields dalam record
  • TIdak ada cara untuk merelasikan data dalam tabel
  • Dibutuhkan program khusus untuk mengakses dan memanipulasi data

 

Relational database:

  • Data diorganisasikan ke dalam baris dan kolom
  • Tiap baris menyatakan contoh dari entitas
  • Tiap kolom menyatakan atribut dari entitas
  • Hubungan antar entitas dinyatakan dengan nilai yang disimpan dalam kolom terkait
  • Bisa diakses dengan menggunakan SQL (Standard Query Language)

 

Lebih bagus kalo kita pake Relational database, kenapa kenapa?

  1. Redundancy (Perulangan)

Kalo kita pake relational Database, maka kita bisa menghilangkan perulangan tersebut sehingga akan muncul hanya sekali saja.

2

Nah, kita bisa buat nama penerbit Big House itu muncul hanya sekali saja beserta dengan nomor teleponnya…

  1. Multiple value problems

Dengan penggunaan Relational database, kita bisa mempermudah pencarian suatu entitas yang bernilai ganda… Misalnya ada 1 buku yang dikarang oleh 3 orang…

4

  1. Update anomalies

Kalo kita mau mengupdate data di single table, kita harus menggantinya satu per satu. Masih gampang sih kalo jumlahnya dikit, tapi kalo banyak? Apa mungkin mau dikerjain satu per satu? Dengan adanya relation dalam suatu database, kita cukup menggantinya dengan cara yang sederhana

  1. Insertion anomalies

Menghindarkan kesulitan saat memasukkan data baru yang belum lengkap informasinya.

  1. Deletion anomalies

Sama seperti keuntungan-keuntungan di atas, kalau kita mau menghapus suatu data, misalnya stock buku, akan menjadi rumit di flat table, namun mudah di relational database karena lebih sederhana.

 

Ada juga loh beberapa hal yang harus diperhatikan dalam menyusun relational database, yaitu:

  1. Avoiding data loss

Harus jeli dalam memisahkan data ke dalam tabel-tabel tertentu, karena akan fatal bila ada yang terlewatkan

  1. Maintaining relational Integrity

Harus diperhatikan hubungan antar tabel sehingga tidak terjadi kehilangan data

  1. Creating data views

Karea kita pecah data dalam beberapa tabel, sulit untuk menampilkannya lagi secara keseluruhan, jadi perlu dirancang tampilannya.

 

Itu pertemuan 1 … Sukses pertemuan 2…

Sumber: Modul Angkatan 54 STIS, Access Database Design & Programming, 3rd Edition

 

 

 

 

 

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s