• Tidak ada hasil yang ditemukan

Pengantar. Teknologi Informasi. 08 Teknologi Basis Data 1. Sumber:

N/A
N/A
Protected

Academic year: 2021

Membagikan "Pengantar. Teknologi Informasi. 08 Teknologi Basis Data 1. Sumber:"

Copied!
21
0
0

Teks penuh

(1)

08 Teknologi Basis Data 1

Sumber:

• Blog Faisal Akib:

http://faisalakib.net/

• Download:

http://download.faisalakib.net/

• Artikel Kuliah:

http://teknik-informatika.com/

Pengantar

Teknologi Informasi

(2)

Halaman 1 08 Teknologi Basis Data 1

Modul 8 : Teknologi Basis-Data (1)

Sub Pokok bahasan : 8.1 Defenisi dan Terminologi 8.2 Peranan Basis-Data 8.3 Model Data

8.4 Sistem Manajemen Basis Data 8.5 SQL

Tujuan Pembelajaran: Setelah mengikuti perkuliahan ini mahasiswa diharapkan mampu membuat abstraksi data sebuah objek, model basis data baik dengan model hirarkis, jaringan, relasional, relasi entitas, dan model berbasis objek.

Gambaran Singkat : Pada perkuliahan ini akan dibahas mengenai peranan basis data pada sistem informasi, teknik-teknik pemodelan data, dan berbagai sistem manajemen basis data..

(3)

Halaman 2 08 Teknologi Basis Data 1

Manajemen organisasi memerlukan pengambilan keputusan, baik dalam operasional sehari-hari, maupun dalam perencanaan strategis ke masa depan. Proses pengambilan keputusan harus dilandasi oleh data dan informasi yang tepat waktu dan tepat isi agar keputusan yang diambil tepat sasaran. Informasi diperoleh dari pengolahan data, dan pengolahan data dilaksanakan oleh sistem informasi dengan dukungan teknologi informasi.

Data adalah bahan baku informasi dan dikumpulkan dalam suatu basis-data (database) agar pengumpulan, penyimpanan, pemeliharaan, pengolahan, dan pengamanan-nya dapat dilaksanakan secara effektif dan effisien. Sebagai contoh suatu institusi akademik harus membangun database akademik, minimal memuat data mahasiswa, data dosen, data matakuliah, data ruangan, jadwal, sehingga dapat diperoleh informasi yang tepat tentang penyelenggaran akademik institusi tersebut. Agar suatu database yang effektif dapat dibangun, diperlukan pengetahuan dasar tentang database.

8.1

Definisi dan Terminologi

Data adalah representasi objek yang menjadi perhatian, misalnya bila mahasiswa menjadi perhatian maka dikumpulkan data yang dapat mewakili objek mahasiswa, misalnya nama, tanggal lahir, jenis kelamin, agama, alamat, dan sebagainya. Apabila kumpulan representasi data ini direkam dan disimpan maka diperoleh file data. Informasi tentang mahasiswa dapat diperoleh dengan cara mengolah kumpulan data mahasiswa tersebut, misalnya dapat diperoleh informasi tentang komposisi umur mahasiswa, tentang komposisi agama, jenis kelamin dan sebagainya.

Adakalanya diperlukan lebih dari satu file yang saling berkaitan untuk merepresentasikan suatu objek, kumpulan file yang diatur dan saling berkaitan (memiliki relasi) disebut sebagai “database” (atau pangkalan data). Informasi dapat diperoleh dengan cepat dan tepat apabila basisdata telah tersusun rapi dan sempurna. Database harus merepresentasi-kan objek secara sempurna, agar bisa memberikan informasi yang tepat, misalnya database nasabah bank harus memuat data nasabah secara lengkap dan mutakhir, kalau tidak maka informasi tentang keadaan keuangan nasabah akan kacau. Database juga harus memiliki kemampuan untuk mengamankan data yang dikandungnya sehingga tidak dapat dibaca, digunakan, diubah, dan dirusak oleh orang yang tidak berhak.

Database (basisdata) dapat pula diumpamakan sebagai suatu lemari arsip, dimana dalam pengelolaan-nya memerlukan aturan-aturan tertentu agar suatu arsip mudah ditemukan, misalpengelolaan-nya dibundel menurut kelompok dan jenis arsipnya, kemudian diberi nomer yang mengikuti suatu sistem penomoran arsip, lalu bundel-bundel arsip ini ditempatkan pada lemari mengikuti urutan tertentu. Pada sistem basisdata digital, setiap bundel adalah file data, dimana didalamnya direkam record-data yang sejenis. Antara satu file dengan file lainnya terdapat relasi, dan bila ada file yang tidak memiliki relasi dengan file lain maka sebenarnya file tersebut bukan anggota dari basisdata.

Data adalah representasi dari fakta dunia nyata yang mewakili suatu objek yang sedang ditinjau (manusia, barang, peristiwa, hewan, konsep, keadaan, dsb), dan direkam dalam bentuk huruf, kata, angka, simbol, gambar, bunyi, atau kombinasinya. Base adalah basis yang dapat diartikan sebagai gudang, markas, tempat berkumpul dari suatu objek atau representasi objek.

(4)

Halaman 3 08 Teknologi Basis Data 1

Definisi : Basisdata dapat didefinisikan dalam berbagai cara:

 Kumpulan file data yang saling berhubungan (berelasi) dan diorganisasi sedemikian rupa agar dapat diakses dengan mudah dan cepat.

 Kumpulan data yang saling berhubungan yang disimpan secara bersama sedemikian rupa dan tanpa pengulangan (redundansi) yang tidak perlu, untuk memenuhi berbagai kebutuhan (Fathansyah, 1999).

 Kumpulan file-file yang saling berelasi, relasi tersebut ditunjukkan dengan kunci dari tiap file yang ada untuk digunakan dalam satu lingkup perusahaan, instansi (Kristanto, 1994).

 Kumpulan file data yang terorganisasi, terintegrasi, dan bisa dipakai bersama (C.J Date, 1981)  Kumpulan rekaman data berbagai tipe yang memiliki relasi satu sama lain (Martin, 1977)

Dalam semua definisi diatas ditonjolkan adanya relasi / hubungan, tanpa pengulangan, pengelompokan, peng-organisasian, effisiensi, dan effektivitas.

Terminologi yang digunakan dalam Database cukup bervariasi sehingga dianggap perlu untuk menggunakan istilah yang sekiranya dapat dipakai bersama dengan suatu pengertian yang sama.

Entity : Entitas, adalah objek yang bisa mewakili orang, tempat, kejadian, atau konsep yang informasi-nya perlu direkam. Pada bidang administrasi akademik, entitas adalah mahasiswa, matakuliah, dosen, ruangan, daftar pustaka, pembayaran, nilai ujian, dsb.

Attribute : Atribut, suatu nama atau sebutan untuk mewakili suatu entitas. Misalnya mahasiswa memiliki atribut seperti NoInduk, Nama, Alamat, Tgl-Lahir, Tempat Lahir, Agama, Status, Jenis Kelamin, dsb.

Data Value : Nilai data, yaitu nilai yang dimiliki atau diberikan kepada suatu atribut, misalnya atribut Nama diberi nilai “Ahmad”, Tgl-Lahir diberi nilai “27-Maret-1978”, dsb.

Data Field : Field data, adalah elemen data yang memiliki nilai. Pada hakekatnya Field data sama fungsinya dengan Atribut data. Nama, Alamat, Jenis Kelamin, dsb, apabila nilainya direkam ke dalam suatu file maka disebut Field-data.

Record / Tuple : Record atau Rekaman data, merupakan kumpulan elemen data, atau kumpulan beberapa nilai Atribut, atau kumpulan Field-data yang mewakili satu Entitas secara lengkap. Misalnya: Entitas pegawai memiliki record: NIP, Nama, Alamat, Pangkat, Jabatan, dsb.

File : File data, adalah kumpulan Record data yang sejenis yang direkam ke dalam satu media, memiliki Atribut-atribut yang sama, namun nilai data-nya berbeda.

Database : Basis-data, kumpulan File data yang dipadu dan saling berkaitan untuk membentuk suatu fondasi pengelolaan informasi pada satu organisasi.

Database Management System (DBMS) : Sistem Manajemen Basisdata, suatu sistem yang terdiri atas Basis-data dan Perangkat Lunak (Software / program) yang bertujuan untuk effektivitas dan effisiensi dalam pengelolaan basisdata.

(5)

Halaman 4 08 Teknologi Basis Data 1

Entity Pegawai Entity Jabatan

Entity Pendidikan Program Aplikasi Query Language Entity Mahasiswa Entity MataKuliah Database Pegawai / Dosen

Relasi

Akses Data Entry Retrieve

Relasi

Software DBMS

Database Mahasiswa Gambar 8.1 – Relasi antara Basis data

8.2

Peranan Basis-Data

Basisdata memiliki peranan penting dalam suatu organisasi, dan dimanfaatkan untuk sejumlah tujuan yang mendukung tujuan utama organisasi. Peranan utama basisdata antara lain sebagai berikut:

 Ketersediaan (availability) : basisdata harus diorganisasi sedemikian rupa sehingga data selalu tersedia ketika diperlukan, walaupun secara fisik penyimpanan file-file datanya tidak harus berada pada satu lokasi, tetapi dengan teknologi jaringan komputer file-file data ini secara logis tersedia bagi penggunanya.

 Kecepatan dan kemudahan (speed) : basisdata harus bisa menjamin bahwa data dapat diakses dengan mudah dan cepat ketika diperlukan.

 Kelengkapan (completeness) : data yang tersimpan dalam basisdata harus lengkap, dengan kata lain dapat melayani semua kebutuhan penggunanya, walaupun kata lengkap adalah relatif terhadap kebutuhan setiap orang, namun basisdata menjamin kemudahan dalam menambah koleksi data, menjamin kemudahan dalam memodifikasi struktur data seperti penambahan field-field data.

 Keakuratan (accuracy) : data dalam file-file database diorganisasi sedemikian rupa sehingga dapat menekan kesalahan-kesalahan pada saat pemasukan (dataentry) dan pada penyimpanan (datastore).

 Keamanan (security) : sistem basisdata yang baik pasti menyediakan fasilitas pengamanan data sehingga data tidak dapat diakses, dimodifikasi, diubah, atau dihapus oleh orang yang tidak diberi hak. Sistem basisdata harus bisa menentukan siapa yang boleh meng-akses data siapa yang tidak boleh, dengan demikian data dapat diamankan.

(6)

Halaman 5 08 Teknologi Basis Data 1

 Pemakaian bersama (data sharing) : basisdata umum-nya dirancang agar dapat digunakan oleh berbagai unit kerja, dan tidak terbatas pada satu pemakai, pada satu lokasi, atau satu aplikasi saja.

 Effisiensi penyimpanan (space/storage efficiency) : organisasi basisdata dibuat sedemikian rupa sehingga dapat menghindari duplikasi data (redundancy), karena duplikasi data memperbesar ruang penyimpanan. Sistem pengkodean dan relasi data yang diterapkan pada basisdata dapat menghemat ruang penyimpanan

Secara teknis bidang-bidang fungsional organisasi yang telah umum menerapkan sistem basis data demi efisiensi, keamanan, keakuratan, dan kecepatan serta kemudahan dalam pengelolaan data, antara lain adalah:

 Kepegawaian (personalia)  Pergudangan (inventaris)  Akuntansi (keuangan)

 Reservasi (pemesanan tiket, kamar hotel, dsb)  Layanan pelanggan (customer services)  Penjualan (point of sale di supermarket)  dan sebagainya

Berbagai organisasi telah menerapkan basisdata dalam sistem informasi-nya, dan berhasil meningkatkan kinerja organisasi, antara lain:

 Perbankan  Asuransi  Pendidikan / sekolah  Swalayan  Rumah sakit  Biro perjalanan  Industri / manufaktur  Telekomunikasi  dan lain lain

8.3

Model Data

Model Data pada hakekatnya adalah kumpulan perangkat konseptual untuk menggambarkan data, relasi data, makna (semantik) data, dan batasan data. Ada sejumlah cara dalam merepresentasikan Model Data untuk keperluan perancangan basis data, yaitu dikelompokkan sebagai berikut:

o Model Hirarkis (Hierarchical Model) o Model Jaringan (Network Model) o Model Relasional (Relational Model)

o Model Relasi Entitas (Entity-Relationship Model) o Model Berbasis Objek (Object Oriented Model)

8.3.1 Model Data Hirarkis

Model data hirarkis adalah model data paling tua yang pernah diterapkan dalam suatu DBMS. Model ini mengikuti pola hirarki pada suatu organisasi atau pada suatu keluarga, dimana terdapat rekaman data yang berfungsi sebagai “bapak” (parent-record) ada yang berfungsi sebagai “anak” (child-record),

(7)

Halaman 6 08 Teknologi Basis Data 1

atau sebagai “pimpinan’ dan “anak-buah”. Dalam model ini seorang “bapak” bisa memiliki lebih dari satu “anak” tetapi seorang “anak” hanya boleh memiliki satu “bapak”.

Sebagai contoh basis-data yang menggambarkan rencana studi mahasiswa dimana seorang mahasiswa boleh mengambil beberapa matakuliah.

Nim Nama-Mhs Alamat_Mhs tgl_Lahir Maha-

siswa Kode-

Mkuliah Nama_Mkuliah sks semester Mata Kuliah

Gambar 8.2 – Model Data Hirarkis

Pada model diatas tidak direpresentasikan bahwa satu matakuliah diambil oleh beberapa mahasiswa, karena berarti menyalahi aturan dimana satu “anak” (kuliah) memiliki banyak “bapak” (mahasiswa). Model diatas akan menyebabkan timbulnya “redudansi” data, karena banyak kemungkinan bahwa matakuliah yang sama diambil oleh beberapa mahasiswa, sehingga record-matakuliah tersebut direkam berkali-kali dibawah record-mahasiswa yang mengambilnya. Disamping itu apabila ada matakuliah yang tidak diprogram-kan oleh mahasiswa maka ada kemungkinan record-nya tidak ada dalam database karena tidak memiliki parent.

Contoh model hirarkis yang menunjukkan hubungan Dosen-MataKuliah-Mahasiswa dapat pula digambarkan dalam bentuk diagram sebagai berikut.

Dosen

Widya Lidya

Algoritma C/C++ Ekonomi Akuntansi Adi Ida Dian Lola Dian Lola Ida Adi

(8)

Halaman 7 08 Teknologi Basis Data 1

Perhatikan dalam model hirarki diatas, data mahasiswa yang sama terpaksa direkam berulang ketika mahasiswa tersebut memprogramkan lebih dari satu matakuliah.

Model hirarkis ini pernah di-implementasikan oleh IBM pada sebuah DBMS yang diberi nama IMS (Information Management System) namun kemudian di-kalahkan oleh implementasi model yang lebih mutakhir seperti model Data Relasional seperti Rbase, dsb.

8.3.2 Model Data Jaringan

Model data jaringan adalah pengembangan dari model data hirarkis, melihat kekurangan dari model hirarkis tersebut. Pada model jaringan diperkenankan bahwa sebuah child-record bisa memiliki lebih dari satu parent-record. Pada implementasi-nya berarti antara parent-record dan child-record diperlukan penghubung (link atau pointer) yang bisa satu arah atau dua-arah.

Nim nama_mhs alamat_mhs tgl_lahir

Kode_

Mkuliah Nama_Mkuliah sks semester

Gambar 8.4 – Model Data Jaringan

Dengan model jaringan ini maka informasi dimana seorang mahasiswa dapat mengambil beberapa matakuliah (pointer dari record mahasiswa tsb ke beberapa record-kuliah) dan juga informasi bahwa satu matakuliah dapat di-program-kan oleh banyak mahasiswa (pointer dari record-kuliah ke beberapa record-mahasiswa) keduanya dapat di-representasikan.

Model Jaringan dari Dosen-Matakuliah-Mahasiswa dapat digambarkan sebagai berikut.

(9)

Halaman 8 08 Teknologi Basis Data 1

Persoalan yang timbul adalah “terjadinya hutan pointer” akibat relasi antar record yang rumit sehingga penelusuran data menjadi sangat sulit. Ketika model relasional menjadi lebih populer maka model inipun ditinggalkan orang.

8.3.3 Model Data Relasional

Model data relasional adalah model data yang diciptakan berdasarkan teori-relasional seperti relational algebra, dan relational calculus. Salah seorang pencetus awal dari basis data relasional adalah E.F.Codd yang juga telah menciptakan serangkaian operasi matematika relasional terhadap model data relasional.

Pada prinsipnya model data relasional dapat di-representasikan dalam bentuk table (tabel) data, dimana:

• satu tabel mewakili satu “domain” data atau entity, bila direkam merupakan satu file yang hanya memiliki satu tipe record saja, setiap record adalah baris

• setiap record terdiri atas beberapa field (atribut) atau tuple, atau kolom • jumlah tuple / field pada setiap record sama

• setiap record memiliki atribut kunci utama (primary key) yang unik dan dapat dipakai untuk mengenali satu record

• record dapat diurutkan menurut kunci utama,

Contoh: domain mahasiswa dapat diwakili oleh satu tabel mahasiswa dengan kunci utama adalah NIM (Nomor Induk Mahasiswa), dan domain matakuliah dapat diwakili oleh satu tabel kuliah dengan kunci utama kode-mkuliah.

tabel mahasiswa

Nim Nama_mhs Alamat_mhs Tgl_lahir

011234 Ahmad Jl. Melati 50 21-3-1980 011345 Bobby Jl. Mawar 103 13-5-1980 011456 Charles Jl. Mangga 145 17-8-1980

tabel kuliah

Kode_mkuliah Nama_Mkuliah sks Semester

315KP2 Pemrograman Visual 2 5 317KP2 Pemrograman Web 2 5 319MP2 Analisis Numerik 2 5

Tabel 8.1 – Tabel Mahasiswa dan Matakuliah

Hubungan antara kedua domain ini dinyatakan dalam bentuk relasi, ada tiga kemungkinan relasi antar dua domain yaitu:

• relasi satu-satu (one-to-one relation) : bahwa satu mahasiswa hanya boleh mengambil satu matakuliah, dan satu matakuliah hanya boleh diambil oleh satu mahasiswa, relasi disingkat dengan simbol 1. Dalam implementasi dua file yang memiliki relasi 1-to-1 dapat digabung menjadi satu file.

(10)

Halaman 9 08 Teknologi Basis Data 1

• relasi satu-banyak (one-to-many relation) : bahwa satu mahasiswa boleh ambil banyak matakuliah tetapi satu matakuliah hanya boleh diambil oleh satu mahasiswa, relasi disingkat dengan simbol 1-to-M atau M-to-1. Pada relasi 1-to-M atau M-to-1, kunci record dari file pada sisi-1 harus ditambahkan sebagai kunci-tamu pada file sisi-M • relasi banyak-banyak (many-to-many relation) : bahwa satu mahasiswa boleh ambil

banyak matakuliah, dan satu matakuliah boleh diambil oleh banyak mahasiswa, relasi disingkat dengan simbol M-to-M. Pada relasi M-to-M harus diciptakan sebuah file ‘relasi’ yang berisi minimal dua field kunci record dari masing-masing file yang berelasi.

Contoh relasi antara domain mahasiswa dan matakuliah secara logis hanya bisa diterima pada jenis relasi banyak-banyak (M-to-M). Perwujudan dari relasi banyak-banyak ini diwakili oleh tabel relasi yang minimal memuat kunci utama masing-masing domain yang berelasi.

Nim Kode_kuliah Nilai

011234 315KP2 A 011234 319MP2 B 011345 315KP2 C 011345 317KP2 A 011345 319MP2 C 011456 317KP2 D 011456 319MP2 B

Tabel 8.2 – Tabel Relasi (M-to-M) antara Mahasiswa dan MataKuliah

8.3.4 Model Relasi-Entitas

Model Relasi-Entitas atau (Entity Relationship Model) pada hakekatnya perwujudan dari model relasional dalam bentuk diagram, yaitu E-R Diagram. Domain data disebut juga sebagai himpunan entitas, diwakili oleh diagram kotak. Field-data atau atribut diwakili oleh diagram lingkaran atau ellips. Hubungan atau relasi antar domain diwakili oleh jajaran-genjang.

Domain data Atribut / Field data

Relasi

Contoh relasi antara domain mahasiswa dan domain matakuliah diwujudkan dalam diagram E-R sebagai berikut:

(11)

Halaman 10 08 Teknologi Basis Data 1

Mahasiswa Nim Nama_ Mhs Alamat_ Mhs Tgl_lahir Ambil Matakuliah Kode_ Mkuliah Nama_ Mkuliah Semester SKS Nim Kode_ Mkuliah Nilai M M

Gambar 8.6 – Diagram E-R dari Mahasiswa dan Matakuliah

8.3.5 Model Data Berbasis Objek

Model data berbasis objek dikembangkan searah dengan perkembangan pemrograman berbasis objek. Salah satu karakteristik dari sistem berbasis objek adalah encapsulation yaitu suatu objek terpisah dari objek lain sehingga setiap objek seakan-akan berada dalam kapsulnya masing-masing. Pada setiap kapsul terdapat komponen data (attribute) dikemas bersama dengan komponen akses-nya (methods). Sebagai contoh, berikut ini disajikan data pegawai dalam format berbasis objek.

(12)

Halaman 11 08 Teknologi Basis Data 1

PEGAWAI PEKERJAAN Data : Relasi antara Data :

NIP, Nama, File Pegawai NIP, Kode_unit, Alamat, TgLahir, dan File Gol, Jabatan, Jkelamin, Status, Pekerjaan TgJabatan. Pendidikan Metoda : Tambah Data Metoda : Hapus Data Tambah Data

Edit Data

Hapus Data UNIT KERJA Data : Relasi antara Kode_unit, File Pekerjaan Nama_unit, dan File Unit Lokasi Kerja

Metoda: Tambah Data Edit Data

Gambar 8.7 – Model Objek dari Data Pegawai

8.4

Sistem Manajemen Basis-Data

Sistem Manajemen Basis-Data (Data Base Management System / DBMS) adalah perangkat lunak sistem yang memungkinkan para pemakai membuat, memelihara, mengontrol, dan meng-akses basis data dengan cara praktis dan efisien. DBMS dapat digunakan untuk meng-akomodasikan berbagai macam pemakai yang memiliki kebutuhan akses yang berbeda-beda. DBMS pada umumnya menyediakan fasilitas atau fitur-fitur yang memungkinkan data dapat diakses dengan mudah, aman, dan cepat. Beberapa fitur yang secara umum tersedia adalah:

 Keamanan : DBMS menyediakan sistem pengamanan data sehingga tidak mudah diakses oleh orang yang tidak memiliki hak akses.

 Independensi : DBMS menjamin independensi antara data dan program, data tidak bergantung pada program yang meng-akses-nya, karena struktur data-nya dirancang berdasarkan kebutuhan informasi, bukan berdasarkan struktur program. Sebaliknya program juga tidak bergantung pada data, sehingga walaupun struktur data diubah, program tidak perlu berubah.  Konkruensi / data sharing : data dapat diakses secara bersamaan oleh beberapa pengguna

karena manajemen data dilaksanakan oleh DBMS.

 Integritas : DBMS mengelola file-file data serta relasi-nya dengan tujuan agar data selalu dalam keadaan valid dan konsisten

 Pemulihan : DBMS menyediakan fasilitas untuk memulihkan kembali file-file data ke keadaan semula sebelum terjadi-nya kesalahan (error) atau gangguan baik kesalahan perangkat keras maupun kegagalan perangkat lunak.

 Kamus / katalog sistem : DBMS menyediakan fasilitas kamus data atau katalog sistem yang menjelaskan deskripsi dari field-field data yang terkandung dalam basisdata.

(13)

Halaman 12 08 Teknologi Basis Data 1

 Perangkat Produktivitas : DBMS menyediakan sejumlah perangkat produktivitas sehingga memudahkan para pengguna untuk menarik manfaat dari database, misalnya report generator (pembangkit laporan) dan query generator (pembangkit query / pencarian informasi).

Sistem Manajemen Basis-Data (DBMS) memiliki berbagai keunggulan dibandingkan dengan pengelolaan data tanpa DBMS, walaupun tidak terlepas dari beberapa kelemahan.

Keunggulan DBMS antara lain sbb:

 Mengurangi duplikasi data atau data redundancy  Menjaga konsistensi dan integritas data

 Meningkatkan keamanan data

 Meningkatkan effisiensi dan effektivitas penggunaan data  Meningkatkan produktivitas para pengguna data

 Memudahkan pengguna dalam menggali informasi dari kumpulan data  Meningkatkan pemeliharaan data melalui independensi data

 Meningkatkan pemakaian bersama dari data  Meningkatkan layanan backup dan recovery data  Mengurangi konflik antar pengguna data

Kelemahan DBMS antara lain sbb:

 Memerlukan suatu skill tertentu untuk bisa melakukan administrasi dan manajemen database agar dapat diperoleh struktur dan relasi data yang optimal

 Memerlukan kapasitas penyimpanan baik eksternal (disk) maupun internal (memory) agar DBMS dapat bekerja cepat dan efisien.

 Harga DBMS yang handal biasanya sangat mahal

 Kebutuhan akan sumber daya (resources) biasanya cukup tinggi

 Konversi dari sistem lama ke sistem DBMS terkadang sangat mahal, disamping biaya pengadaan perangkat keras dan perangkat lunak, diperlukan pula biaya pelatihan.

 Apabila DBMS gagal menjalankan misinya maka tingkat kegagalan menjadi lebih tinggi karena banyak pengguna yang bergantung pada sistem ini.

Berikut ini disajikan tabel beberapa DBMS yang terkenal.

DBMS Perusahaan

Access Microsoft Corporation DB2 IBM

Informix IBM Ingress Computer Associate mySQL The MySQL Company

Oracle Oracle Corporation Postgres SQL Postgres

Sybase Sybase Inc. Visual dBase Borland Visual FoxPro FoxPro Corporation

Tabel 8.3 – Tabel berbagai DBMS

DBMS untuk model data berbasis objek biasanya dinamakan sebagai Object Oriented Data Base Management System (OODBMS). Beberapa OODBMS yang terkenal adalah sebagai berikut:

(14)

Halaman 13 08 Teknologi Basis Data 1

OODBMS Perusahaan

Gemstone Gemstone System Matisse ADB Inc. Versant Versant Jeevan W3 Apps. Vision Insyte

Objectivity Objectivity Inc. ObjectStone Object Design Inc. Poet Poet Software.

Tabel 8.4 – Tabel berbagai OODBMS

Perlu ditambahkan disini bahwa beberapa DBMS berbasis objek sebenarnya tetap menggunakan file data relasional biasa, dengan kata lain, programnya berbasis objek tetapi datanya masih model relasional biasa. Software seperti ini biasanya disebut sebagai Object Oriented Relational DataBase Management System (OORDBMS), misalnya Visual dBase.

Arsitektur DBMS

Salah satu tujuan dari DBMS adalah untuk menyediakan sarana antar muka (interface) dalam meng-akses data secara efisien tanpa harus melihat kerumitan atau detail tentang cara data direkam dan dipelihara. DBMS memiliki arsitektur untuk melakukan abstraksi dari data sehingga dapat diperoleh independensi data-program.

Pada tahun 1975, badan standarisasi nasional Amerika ANSI-SPARC (American National Standards Institute – Standards Planning and Requirements Committee) menetapkan tiga level abstraksi dalam database, yaitu:

1. Level Eksternal (external level) atau Level Pandangan (view level) 2. Level Konseptual (conceptual level)

3. Level Internal (internal level) atau Level Fisik (physical level)

Level Eksternal adalah level yang berhubungan langsung dengan pengguna database. Pada level ini pengguna (user) hanya bisa melihat struktur data sesuai dengan keperluannya sehingga setiap user bisa memiliki pandangan (view) yang berbeda dari user lainnya. Pada level ini pula dimungkinkan pandangan user berbeda dengan representasi fisik dari data, misalkan untuk data hari secara fisik data direkam dalam bentuk kode (1, 2, 3, dst) sedang user melihat data dalam bentuk teks nama hari (Ahad, Senin, Selasa, ...). Data yang dilihat oleh user seakan-akan berasal dari satu file, secara fisik mungkin diambil dari beberapa file yang berelasi.

(15)

Halaman 14 08 Teknologi Basis Data 1

User-1 User-2 User-3

View-1 View-2 View-3

Eksternal

Konseptual

Internal

File-file Basisdata

Gambar 8.8 - Arsitektur Sistem Manajemen Basisdata

Level Konseptual adalah level dari para administrator database, pada level ini didefinisikan hubungan antar data secara logik, sehingga diperlukan struktur data secara lengkap. Para administrator database memahami bagaimana satu view dijabarkan dari beberapa file data, demikian pula pada saat perancangan database mereka dapat saja membagi data menjadi beberapa file agar dapat diakses dan disimpan secara efisien.

Level Internal adalah level dimana data disimpan secara fisik dalam bentuk kode, teks, angka, bit. Pada level ini didefinisikan allokasi ruang penyimpanan data, deskripsi data dalam penyimpanan, kompressi data (agar lebih hemat), dan enkripsi data (agar lebih aman).

Agar independensi data dapat dicapai maka disediakan pemetaan antar lapisan (level), yatiu pemetaan eksternal-konseptual dan pemetaan konseptual-internal. Pada pemetaan eksternal-konseptual, DBMS dapat memetakan field-field data dari user-view ke dalam struktur data yang sesungguhnya. Pada pemetaan konseptual-internal, DBMS dapat menemukan rekaman fisik dari data yang didefinisikan pada struktur logik.

(16)

Halaman 15 08 Teknologi Basis Data 1

user view-1 user view-2

NoMhs, Nama, Alamat, Jkel NoMhs, Nama, Agama, Hobby Level Eksternal

NoMhs, Nama, Jkel, Agama, Hobby, Alamat Level Konseptual

Struct Mahasiswa { char NoMhs[9]; char Nama[25]; int Jkel; Level Internal int Agama; char Hobby[15]; char Alamat[30];

struct Mahasiswa *next; };

index NoMhs;

Gambar 8.9 – Tiga level abstraksi dari data mahasiswa Bahasa DBMS

Implementasi bahasa DBMS bervariasi sesuai dengan variasi perusahaan yang merancangnya, namun pada prinsipnya bahasa ini bisa dikategorikan ke dalam tiga komponen bahasa, yaitu:

1. Data Definition/Decription Language (DDL) 2. Data Manipulation Language (DML) 3. Device Control Media Language (DCML)

DDL adalah komponen bahasa DBMS yang digunakan untuk mendefinisikan struktur data antara lain perintah untuk membuat tabel baru (CREATE) dimana terdefinisi komponen/field data dengan tipe dan panjangnya, mengubah index (INDEX, REINDEX) agar setiap rekord dalam satu file data dapat diakses melalui indeks-nya, mengubah struktur (MODIFY STRUCT) dari file data, dan sebagainya. Komponen bahasa ini banyak digunakan oleh para administrator basisdata pada saat merencanakan atau membangun file-file basisdata.

DML adalah komponen bahasa DBMS yang digunakan untuk memanipulasi data, komponen ini diperlukan oleh para pengguna untuk memanipulasi data, antara lain perintah-perintah untuk melakukan hal-hal berikut ini:

 mengambil data dari basisdata (LIST, DISPLAY)

 menambah data kedalam basisdata (INSERT, APPEND)  meremajakan data yang ada dalam basisdata (UPDATE)  menghapus data yang tidak diperlukan (DELETE)  meng-urutkan data (SORT)

 menghitung frekuensi data (COUNT)  mencari data (SEEK, FIND)

(17)

Halaman 16 08 Teknologi Basis Data 1

DML dapat dibedakan atas dua macam, yaitu DML Prosedural dan DML Non-Prosedural. Pada DML Prosedural ketika data akan dimanipulasi maka perintah harus disertai dengan perintah-perintah bagaimana data diakses dari file database. Perintah DML Prosedural biasanya termuat dalam bahasa program tingkat tinggi (high level programming language) seperti COBOL, C, C++ dan sebagainya. Pada DML non-Prosedural data dapat dimanipulasi langsung tanpa harus memerintahkan bagaimana data dibaca dari file. Perintah DML non-Prosedural biasanya digunakan dalam bahasa-bahasa DBMS seperti pada dBase, Access, Paradox, FoxPro, SQL, dan sebagainya.

DCML adalah komponen bahasa DBMS yang digunakan untuk mengatur perekaman atau penyimpanan data secara fisik. Komponen bahasa DCML digunakan oleh operator-operator sistem basisdata didalam mengatur file-file data secara fisik. Perintah-perintah yang termuat dalam komponen ini, antara lain perintah perintah: merekam (Write Record, Create Table), menghapus (Drop, Delete Table).

8.5

SQL

SQL (Structured Query Language) adalah salah satu bahasa DBMS yang meng-adopsi model data relasional. SQL muncul dalam berbagai variasi seperti Microsoft SQL, MySQL, dan versi SQL lainnya. Pengetahuan dasar tentang SQL diperlukan karena bahasa ini menjadi salah satu bahasa populer dalam akses data di dunia Internet. SQL telah distandarisasi oleh ISO (International Standards Organization) dan ANSI (American National Standard Institute) sejak tahun 1986 (SQL86) dan diperbaharui ketika diperlukan adanya modifikasi baru (misalnya pada SQL99).

Sesungguhnya SQL tidak terbatas pada penyajian data (query) tetapi juga mencakup pembuatan tabel data baru (Create Table), menghapus tabel data (Drop Table), menambahkan data kedalam tabel (Insert), menghapus data dari tabel (Delete/Drop record). Beberapa perintah dasar SQL diperlihatkan pada tabel berikut ini.

Perintah Manfaat

SELECT membaca data dari database

INSERT menambahkan data kedalam database UPDATE meremajakan / mengganti data DELETE menghapus rekord data CREATE TABLE membuat tabel data baru DROP TABLE menghapus tabel data ALTER TABLE merubah struktur tabel/file GRANT memberi hak akses pada user REVOKE membatalkan hak akses dari user

Tabel 8.5 – Daftar perintah SQL Perintah SELECT

Perintah SELECT digunakan untuk membaca data dari database, perintah ini mempunyai bentuk umum sebagai berikut:

SELECT field-1 [, field-2, field-3, ...] FROM tabel-1 [, tabel-2, tabel-3, ...] WHERE syarat/predikat

(18)

Halaman 17 08 Teknologi Basis Data 1

Berikut ini diberikan sebuah contoh pemakaian perintah SELECT untuk membaca data matakuliah yang diajarkan oleh dosen tertentu.

SELECT k.kodeMK, k..namaMK, d.namaDosen FROM kuliah k, dosen d

WHERE k.kodeDos = d.kodeDOS ORDER BY k.kodeMK

Perintah diatas membaca data dari dua file data, yaitu file matakuliah (kuliah yang disingkat dengan huruf k) dan file dosen (yang disingkat dengan huruf d) dengan menampilkan daftar yang terdiri atas kolom-kolom kodeMK, namaMK, namaDosen terurut menurut kodeMK.

Perintah INSERT

Perintah INSERT digunakan untuk menyisipkan atau menambah satu rekord data kedalam satu tabel/file data. Bentuknya sebagai berikut:

INSERT INTO tabel-1 [ (field-1, field-2, ...] VALUES (v1, v2, ...)

Berikut ini adalah contoh instruksi untuk menyisipkan sebuah rekord data mahasiswa kedalam tabel mahasiswa.

INSERT INTO mahasiswa (NoMhs, NamaMhs, Jkel, Alamat)

VALUES (‘02010345’, ‘Abdurahman Wahid’, P, ‘Jl.Disket No.45 Makassar’)

Perintah UPDATE

Perintah UPDATE digunakan untuk merubah isi rekord data dari suatu tabel/file database. Bentuknya sebagai berikut:

UPDATE tabel SET perubahan

[ WHERE syarat/predikat ]

Apabila hanya data tertentu saja yang akan diubah/diremajakan maka klaus WHERE perlu ditulis, tanpa WHERE maka perubahan berlaku untuk semua rekord dalam tabel tersebut. Contoh:

UPDATE kuliah SET sks=2

WHERE kodeMK = ‘3SI423’

Perintah ini merubah sks matakuliah berkode 3SI423 menjadi 2 pada file kuliah. UPDATE dosen

SET namaDos = ‘Prof. ‘ + namaDos WHERE kodeDOS = ‘132234122’

(19)

Halaman 18 08 Teknologi Basis Data 1

Perintah ini menambahkan gelar Prof pada seorang dosen dengan kode 132234122. Perintah DELETE

Perintah DELETE digunakan untuk menghapus satu rekord dari satu file/tabel database. Bentuknya sebagai berikut:

DELETE FROM tabel [WHERE syarat/predikat]

Klaus WHERE digunakan apabila hanya rekord tertentu yang akan dihapus, apabila klaus WHERE tidak ditulis maka semua rekord akan terhapus (hati-hati memakainya). Contoh:

DELETE FROM kuliah WHERE kodeMK = ‘2TI123’

Perintah ini menghapus rekord matakuliah berkode 2TI123. Perintah CREATE TABLE

Perintah CREATE TABLE digunakan untuk menciptakan tabel baru (DDL) dilengkapi dengan definisi struktur datanya. Bentuk umumnya sbb:

CREATE TABLE tabel (field-1 tipe-1, field-2 tipe-2, ...)

Sebagai contoh andaikan akan dibuat tabel mahasiswa dengan struktur sebagai berikut: KodeMHS char, dengan 9 digit

NamaMHS char, sepanjang 25 karakter Jkel char, kode 1 huruf

Alamat char, sepanjang 30 karakter TgLahir date

maka perintahnya adalah sbb:

CREATE TABLE mahasiswa (KodeMHS char(9), NamaMHS char(25), Jkel char(1), Alamat char(30), Tglahir date)

Primary key KodeMHS.

Perintah DROP TABLE

Perintah ini digunakan untuk menghapus file/tabel dari database, harus digunakan secara hati-hati, walaupun DBMS biasanya memiliki proteksi tertentu sehingga penghapusan data bisa dibatalkan bila diperlukan. Bentuknya sbb:

DROP TABLE tabel

Sebagai contoh file mahasiswa dapat dihapus dengan perintah: DROP TABLE mahasiswa.

(20)

Halaman 19 08 Teknologi Basis Data 1

Perintah ALTER TABLE

Perintah ini digunakan untuk mengubah struktur file data, baik dengan menambah field data maupun menghapus field data tertentu. Bentuknya sbb:

ALTER TABLE tabel

ADD field-1, tipe-1 [field-2 tipe-2, ... ]

untuk menambahkan field baru kedalam tabel data. ALTER TABLE tabel

DROP field

untuk menghapus field tertentu. Contoh pemakaian:

a. menambahkan field agama dan status pada file mahasiswa ALTER TABLE mahasiswa

ADD agama int, status char(1)

b. menghapus field gelar dari file dosen ALTER TABLE dosen

DROP gelar.

Perintah GRANT

Perintah GRANT digunakan untuk memberi hak akses tertentu pada user, bentuk umumnya adalah sbb:

GRANT akses-1 [ ,akses-2, ...] ON tabel TO user-1 [, user-2, ...] Contoh pemakaian sebagai berikut:

GRANT INSERT, DELETE, UPDATE ON kuliah TO Judy, John

Pengguna dengan login-name Judy dan John memperoleh hak untuk melakukan operasi INSERT, DELETE, dan UPDATE pada file/tabel kuliah.

Perintah REVOKE

Perintah REVOKE digunakan untuk membatalkan hak akses dari user, bentuk umumnya sebagai berikut:

REVOKE akses-1 [, akses-2, ...] ON tabel FROM user-1 [, user-2, ...] Contoh pemakaian sebagai berikut:

(21)

Halaman 20 08 Teknologi Basis Data 1

REVOKE INSERT, DELETE ON kuliah FROM John

Perintah ini membatalkan hak dari John untuk melakukan INSERT dan DELETE pada file kuliah.

Rangkuman

Data base atau basis data merupakan sekumpulan file yang saling berelasi satu sama lain. Dengan adanya basis data, berbagai keperluan pengolahan data dapat dilakukan secara efisien dan akurat. Untuk mengaplikasikan sebuah basis data yang tepat, maka sebelum dibangun sebuah basis data dimodelkan terlebih dahulu sehingga mudah untuk merancang basis data yang normal.

Latihan

1. Jelaskan arti masing-masing istilah berikut! a. Entity b. Attribute c. Data value d. Data field e. Record/tuple f. File g. Database

h. Database management system

2. Apa peranan utama sistem basis data pada sebuah organisasi? 3. Sebutkan berbagai macam teknik untuk memodelkan objek!

Gambar

Gambar 8.3 – Diagram Hirarkis Dosen-Matakuliah-Mahasiswa
Gambar 8.5 – Diagram Model Jaringan Dosen-MataKuliah-Mahasiswa
Tabel 8.2 – Tabel Relasi (M-to-M) antara Mahasiswa dan MataKuliah
Gambar 8.6 – Diagram E-R dari Mahasiswa dan Matakuliah
+6

Referensi

Dokumen terkait

– Ketika sebuah data pada suatu berkas diubah, data yg terkait dg data yg diubah pada berkas lain tidak mengalami perubahan. •

• Kumpulan data yang saling berhubungan yang disimpan secara bersama, tanpa adanya data yang besifat redundansi (berulang), untuk memenuhi berbagai kebutuhan. • Kumpulan file atau

Membuat File Dbase dengan perintah : .CREATE <nama_file> CREATE digunakan untuk mendefinisikan struktur database yang baru, aturan dalam pemberian nama file : tidak boleh

Sebuah data ditempatkan pada suatu site dimana data tersebut banyak di akses oleh pengguna, dan hal ini mempunyai dampak yang baik untuk paralel DBMS yaitu memiliki

Using DDL Statements to Create and Manage Tables Mahasiswa dapat mengetahui dana memahami cara untuk memanipulasi data, serta dapat mengolah tables Mahasiswa dapat

SUATU DATA BASE MANAGEMENT SYSTEM (DBMS) TERDIRI DARI SEKUMPULAN DATA YANG SALING BERHUBUNGAN DAN SUATU HIMPUNAN PROGRAM YANG MELAKUKAN AKSES TERHADAP DATA TERSEBUT.. TUJUAN DARI

DBMS memungkinkan penggunanya untuk mendefinisikan database, dengan menggunakan Data Definition Language (DDL) yang memungkinkan penggunanya untuk menentukan tipe data dan

Struktur DBMS untuk Pemrosesan Query  File manager, yang mengelola alokasi dalam disk dan struktur data yang digunakan untuk merepresentasikan informasi yang tersimpan dalam disk