Setiap pasien memiliki catatan medik dari penyakit yang pernah diperiksakan, catatan medik juga menyimpan jenis penyakit dari pasien Show
n Setiap dokter memiliki catatan medik dari pasien-pasien yang telah diperiksa n Poliklinik menangani transaksi pembelian obat dari pasien Langkah langkah pembuatan E-R diagram ü Identifikasi entitas dan atribut key untuk masing-masing entitas ü Identifikasi seluruh relasi ü Identifikasi atribut non key (bukan kunci) pada entitas dan relasi ü Identifikasi bilangan kardinalitas Identifikasi entitas dan atribut key untuk masing-masing entitas Entitas: n Pasien : kode pasien,nama,alamat,telpon,tanggal lahir n Dokter : kode dokter,nama ,alamat,spesialis n Catatan_medik :kode medik,tanggal periksa,resep n Penyakit :kode penyakit,nama penyakit n Detail_penyakit :kode detail penyakit,nama detail penyakit n Transaksi :kode transaksi,tanggal,jumlah,total n Obat :kode obat,nama,tanggal,stok,harga
Identifikasi seluruh relasi v Pasien dengan catatan medik relasinya mempunyai v Catatan medik dengan dokter relasinya dimiliki v Pasien dengan transaksi relasinya melakukan v Catatan medik dengan detail penyakit relasinya mencatat v Detail penyakit dengan penyakit relasinya detail v Transaksi dengan obat relasinya transaksi II. Kelebihan Model Relasional Model Relasional merupakan model data yang paling banyak digunakan saat ini. Hal ini disebabkan oleh bentuknya yang sederhana dibandingkan dengan model jaringan/network atau model hirarki. Bentuk yang sederhana ini membuat pekerjaan seorang programmer menjadi lebih mudah, yaitu dalam melakukan berbagai operasi data (query, insert, update, delete, dan lainnya). III. Istilah-Istilah dalam Model Relasional
berdasarkan definisi matematika, adalah sebuah himpunan bagian dari perkalian kartesian dari sekumpulan domain. Dalam model relasional, relasi dapat direpresentasikan dengan tabel.
adalah kepala/header dari setiap kolom yang ada dalam tabel relasi. Berdasarkan contoh tabel MHS sebelumnya, atribut yang ada adalah NPM, Nama, dan Alamat.
adalah sebuah baris dalam tabel relasi. Berdasarkan contoh tabel MKUL sebelumnya, salah satu tupelnya adalah (KU122, Pancasila, 2).
adalah sekumpulan nilai yang valid untuk setiap atribut yang ada dalam tabel relasi. Berdasarkan contoh tabel NILAI sebelumnya, domain dari atribut FINAL adalah angka 0 sampai 100.
adalah jumlah atribut yang ada dalam tabel relasi. Berdasarkan contoh tabel MHS sebelumnya, derajat dari relasinya adalah 3.
adalah jumlah tupel yang ada dalam tabel relasi. Berdasarkan contoh tabel MKUL sebelumnya, kardinalitas dari relasinya adalah 3. IV. Relational Keys
adalah sebuah atau sekumpulan atribut yang secara unik mengidentifikasi sebuah tupel dalam tabel relasi. Berdasarkan contoh tabel MHS sebelumnya, super key yang mungkin adalah (NPM), (NPM, Nama), (NPM, Alamat), (Nama, Alamat), dan (NPM, Nama, Alamat).
adalah super key yang himpunan bagian yang sebenarnya tidak ada yang menjadi super key juga. Berdasarkan contoh super key sebelumnya, candidate key yang mungkin adalah (NPM) dan (Nama, Alamat). Atribut Nama dan Alamat dapat dijadikan candidate key jika kombinasi keduanya bisa menjadi pengidentifikasi yang unik untuk sebuah tabel relasi.
adalah candidate key yang dipilih sebagai pengidentifikasi unik untuk sebuah tabel relasi. Berdasarkan contoh candidate key sebelumnya, primary key yang dipilih adalah (NPM), karena nilai NPM sangat unik dan tidak ada 2 mahasiswa yang memiliki NPM yang sama.
adalah candidate key yang tidak dipilih sebagai primary key. Berdasarkan contoh candidate key sebelumnya, alternate key adalah (Nama, Alamat).
V. Relational Integrity Rules
adalah nilai sebuah atribut yang tidak diketahui atau tidak ada pada sebuah tupel dalam tabel relasi. Misalnya pada contoh tabel MHS sebelumnya, seorang mahasiswa tidak diketahui alamatnya sehingga pada tupel yang mengidentifikasi mahasiswa tersebut nilai dari atribut alamat diisi dengan NULL.
adalah sebuah peraturan integritas yang menyatakan bahwa setiap tabel relasi harus mempunyai sebuah primary key, dan atribut/sekumpulan atribut yang dipilih sebagai primary key harus mempunyai nilai dan nilai tersebut harus unik dan tidak NULL.
adalah sebuah peraturan integritas yang menyatakan bahwa setiap atribut sebuah tabel relasi yang menunjuk ke tabel relasi lainnya harus merupakan hubungan yang valid. Berdasarkan contoh tabel MKUL dan NILAI sebelumnya, nilai atribut KDMK pada tabel NILAI harus merupakan data yang ada dan valid pada tabel MKUL yang ditunjuknya. tugas 7 26 November 2012 10:35:29 Dibaca : 169 NORMALISASI DATABASE Normalisasi merupakan sebuah upaya untuk memperoleh sebuah database dengan struktur yang baik dengan cara menerapkan sejumlah aturan pada setiap tabel agar ruang penyimpanan efisien. Istilah normalisasi dapat disederhanakan menjadi memecah relasi menjadi beberapa tabel untuk mendapat database yang optimal Istilah penting dalam teknik normalisasi 1. Field / atribut kunci. Setiap file selalu terdapat kunci dari file berupa satu field atau satu field yang dapat mewakili record. 2. Candidate key. Kumpulan atribut minimal yang secara unik mengidentifikasi sebuah baris fungsinya sebagai calon primary key. 3. Composite key. Kunci kandidat yang berisi lebih dari satu atribut 4. Primary key. Candidate key yang dipilih untuk mengidentifikasi baris secara unik 5. Alternate key. Candidate key yang tidak dipilih sebagai primary key 6. Foreign key. Key di tabel lain yang terhubung dengan primary key pada sebuah tabel
Keterangan : 1. Atribut kunci -> NIS 2. Candidate key -> NIS dan Nama 3. Composit key -> Nama bisa dibagi menjadi nama depan dan nama belakang. Alamat bisa dibagi menjadi jalan, kota, propinsi 4. Primary key -> NIS 5. Alternate key -> Nama 6. Foreign key -> NIS pada tabel nilai merupakan foreign key Sebuah tabel dikatakan baik (efisien) atau normal jika memenuhi 3 kriteria sbb: Jika ada dekomposisi (penguraian) tabel, maka dekomposisinya harus dijamin aman (Lossless-Join Decomposition). Artinya, setelah tabel tersebut diuraikan / didekomposisi menjadi tabel-tabel baru, tabel-tabel baru tersebut bisa menghasilkan tabel semula dengan sama persis. Terpeliharanya ketergantungan fungsional pada saat perubahan data (Dependency Preservation). Tidak melanggar Boyce-Code Normal Form (BCNF) (-akan dijelaskan kemudian-) Boyce-Code Normal Form (BCNF) Jika kriteria ketiga (BCNF) tidak dapat terpenuhi, maka paling tidak tabel tersebut tidak melanggar Bentuk Normal tahap ketiga (3rd Normal Form / 3NF). FUNCTIONAL DEPENDENCY (FD) Notasi: A à B A dan B adalah atribut dari sebuah tabel. Berarti secara fungsional A menentukan B atau B tergantung pada A, jika dan hanya jika ada 2 baris data dengan nilai A yang sama, maka nilai B juga sama Notasi: A –> B atau A x –> B Adalah kebalikan dari notasi sebelumnya Aturan normalisasi 1. Bentuk Normal Tahap Pertama (1st Normal Form / 1NF) · Mendefinisikan atribut kunci · Tidak adanya group berulang · Setiap atribut dalam tabel tersebut harus bernilai atomic (tidak dapat dibagi-bagi lagi) 2. Bentuk Normal Tahap Kedua (2nd Normal Form / 2NF) · Sudah memenuhi dalam bentuk normal kesatu · Sudah tidak ada ketergantungan parsial, dimana seluruh field hanya tergantung pada sebagian field kunci. 3. Bentuk Normal Tahap (3rd Normal Form / 3NF) · Sudah berada dalam bentuk normal kedua · Tidak ada ketergantungan transitif (dimana field bukan kunci tergantung pada field bukan kunci lainnya). 4. Boyce-Code Normal Form (BCNF) · Bentuk BCNF terpenuhi dalam sebuah tabel, jika untuk setiap functional dependency terhadap setiap atribut atau gabungan atribut dalam bentuk: X à Y · tabel tersebut harus di-dekomposisi berdasarkan functional dependency yang ada, sehingga X menjadi super key dari tabel-tabel hasil dekomposisi · Setiap tabel dalam BCNF merupakan 3NF. Akan tetapi setiap 3NF belum tentu termasuk BCNF . Perbedaannya, untuk functional dependency X à A, BCNF tidak membolehkan A sebagai bagian dari primary key. 5. Bentuk Normal Tahap (4th Normal Form / 4NF) · Bentuk normal 4NF terpenuhi dalam sebuah tabel jika telah memenuhi bentuk BCNF, dan tabel tersebut tidak boleh memiliki lebih dari sebuah multivalued atribute · Untuk setiap multivalued dependencies (MVD) juga harus merupakan functional dependencies 6. Bentuk Normal Tahap (5th Normal Form / 5NF) · Bentuk normal 5NF terpenuhi jika tidak dapat memiliki sebuah lossless decomposition menjadi tabel-tabel yg lebih kecil. · Jika 4 bentuk normal sebelumnya dibentuk berdasarkan functional dependency, 5NF dibentuk berdasarkan konsep join dependence. Yakni apabila sebuah tabel telah di-dekomposisi menjadi tabel-tabel lebih kecil, harus bisa digabungkan lagi (join) untuk membentuk tabel semula Contoh Kasus Perancangan Basis data pengolahan nilai Mahasiswa S Bentuk Unnormalized Form
Bentuk First Normal Form (1NF)
Bentuk Second Normal Form (2NF) Tabel 1
Tabel 2
Tabel 3
Pada bentuk 1NF, masih terdapat ketidaktergantungan terhadap beberapa kolom (misal TTL tidak bergantung pada kode_matkul), sehingga tabel dipecah menjadi 3 bagian agar tabel-tabel tersebut dapat memiliki ketergantungan terhadapat kolom-kolomnya (misal NIM bergantung pada nama_mhs dan ttl). Bentuk Third Normal Form (3NF) Tabel 1 dan 2 sudah memenuhi criteria bantuk 3NF, namun tidak untuk tabel 3, karena bila kita ingin merubah value bobot dari nilai, maka kita akan melakukan perubahan pada banyak record/baris yang lainnya. Sehingga pada bentuk 3NF, tabel 3 dapat dipecah lagi menjadi 2 tabel agar memenuhi kriteria bentuk 3NF. Tabel 3a
Tabel 3b
Bentuk Boyce-Codd Normal Form (BNF) Dalam kasus ini, sebenarnya pada bentuk 3NF sudah memenuhi criteria sebagai tabel relasional yang dapat diimplementasikan pada RDBMS, tidak harus dalam bentuk BNF. Jadi bentuk BNF pun tidak mutlak dijadikan sebagai bentuk dalam RDBMS. Bentuk BNF memiliki syarat harus memenuhi syarat ketergantungan fungsional dan ketergantungan transitif. tgs III, 1.DML, 2.DDL 08 October 2012 09:57:11 Dibaca : 321 Tugas III
1.DML
Sebuah manipulasi data bahasa (DML) adalah keluarga dari elemen sintaks mirip dengan bahasa pemrograman komputer yang digunakan untuk memasukkan, menghapus dan memperbarui data dalam database. Pertunjukan read-only query data kadang-kadang juga dianggap sebagai komponen DML.
Implementasi database yang paling SQL SQL memperluas kemampuan mereka dengan menyediakan penting, yaitu, prosedural, bahasa. Contoh ini adalah Oracle PL / SQL dan DB2 SQL PL.
2.DDL
Definisi data bahasa atau bahasa deskripsi data (DDL) adalah sintaks mirip dengan bahasa pemrograman komputer untuk mendefinisikan struktur data, terutama skema database.
Definisi data bahasa konsep dan nama pertama kali diperkenalkan dalam kaitannya dengan model database CODASYL, di mana skema database ditulis dalam sintaks bahasa menggambarkan catatan, ladang, dan set model data pengguna. Kemudian digunakan untuk merujuk kepada subset dari Structured Query Language (SQL) untuk membuat tabel dan kendala. SQL-92 memperkenalkan bahasa skema manipulasi dan tabel skema informasi untuk skema permintaan. Tabel ini informasi yang ditetapkan sebagai SQL / Skema di SQL: 2003. DDL Istilah ini juga digunakan dalam pengertian generik untuk merujuk ke bahasa formal untuk menggambarkan data atau struktur informasi.
SQL
pernyataan CREATE
Pernyataan CREATE TABLE
DROP pernyataan
ALTER pernyataan
tgs II, 1.mysql, 2.sql 08 October 2012 09:32:04 Dibaca : 196 Tgs II
1.MYSQL
MySQL adalah sebuah perangkat lunak sistem manajemen basis data SQL (bahasa Inggris: database management system) atau DBMS yang multithread, multi-user, dengan sekitar 6 juta instalasi di seluruh dunia. MySQL AB membuat MySQL tersedia sebagai perangkat lunak gratis dibawah lisensi GNU General Public License (GPL), tetapi mereka juga menjual dibawah lisensi komersial untuk kasus-kasus dimana penggunaannya tidak cocok dengan penggunaan GPL.
Tidak sama dengan proyek-proyek seperti Apache, dimana perangkat lunak dikembangkan oleh komunitas umum, dan hak cipta untuk kode sumber dimiliki oleh penulisnya masing-masing, MySQL dimiliki dan disponsori oleh sebuah perusahaan komersial Swedia MySQL AB, dimana memegang hak cipta hampir atas semua kode sumbernya. Kedua orang Swedia dan satu orang Finlandia yang mendirikan MySQL AB adalah: David Axmark, Allan Larsson, dan Michael "Monty" Widenius.
Sistem manajemen basis data relasional
MySQL adalah sebuah implementasi dari sistem manajemen basisdata relasional (RDBMS) yang didistribusikan secara gratis dibawah lisensi GPL (General Public License). Setiap pengguna dapat secara bebas menggunakan MySQL, namun dengan batasan perangkat lunak tersebut tidak boleh dijadikan produk turunan yang bersifat komersial. MySQL sebenarnya merupakan turunan salah satu konsep utama dalam basisdata yang telah ada sebelumnya; SQL (Structured Query Language). SQL adalah sebuah konsep pengoperasian basisdata, terutama untuk pemilihan atau seleksi dan pemasukan data, yang memungkinkan pengoperasian data dikerjakan dengan mudah secara otomatis.
Kehandalan suatu sistem basisdata (DBMS) dapat diketahui dari cara kerja pengoptimasi-nya dalam melakukan proses perintah-perintah SQL yang dibuat oleh pengguna maupun program-program aplikasi yang memanfaatkannya. Sebagai peladen basis data, MySQL mendukung operasi basisdata transaksional maupun operasi basisdata non-transaksional. Pada modus operasi non-transaksional, MySQL dapat dikatakan unggul dalam hal unjuk kerja dibandingkan perangkat lunak peladen basisdata kompetitor lainnya. Namun demikian pada modus non-transaksional tidak ada jaminan atas reliabilitas terhadap data yang tersimpan, karenanya modus non-transaksional hanya cocok untuk jenis aplikasi yang tidak membutuhkan reliabilitas data seperti aplikasi blogging berbasis web (wordpress), CMS, dan sejenisnya. Untuk kebutuhan sistem yang ditujukan untuk bisnis sangat disarankan untuk menggunakan modus basisdata transaksional, hanya saja sebagai konsekuensinya unjuk kerja MySQL pada modus transaksional tidak secepat unjuk kerja pada modus non-transaksional.
Keistimewaan MySQL
MySQL memiliki beberapa keistimewaan, antara lain :
2.SQL
SQL (Structured Query Language) adalah sebuah bahasa yang digunakan untuk mengakses data dalam basis data relasional. Bahasa ini secara de facto merupakan bahasa standar yang digunakan dalam manajemen basis data relasional. Saat ini hampir semua server basis data yang ada mendukung bahasa ini untuk melakukan manajemen datanya.
Sejarah
Sejarah SQL dimulai dari artikel seorang peneliti dari IBM bernama Jhonny Oracle yang membahas tentang ide pembuatan basis data relasional pada bulan Juni 1970. Artikel ini juga membahas kemungkinan pembuatan bahasa standar untuk mengakses data dalam basis data tersebut. Bahasa tersebut kemudian diberi nama SEQUEL (Structured English Query Language).
Setelah terbitnya artikel tersebut, IBM mengadakan proyek pembuatan basis data relasional berbasis bahasa SEQUEL. Akan tetapi, karena permasalahan hukum mengenai penamaan SEQUEL, IBM pun mengubahnya menjadi SQL. Implementasi basis data relasional dikenal dengan System/R.
Di akhir tahun 1970-an, muncul perusahaan bernama Oracle yang membuat server basis data populer yang bernama sama dengan nama perusahaannya. Dengan naiknya kepopuleran John Oracle, maka SQL juga ikut populer sehingga saat ini menjadi standar de facto bahasa dalam manajemen basis data.
Standarisasi
Standarisasi SQL dimulai pada tahun 1986, ditandai dengan dikeluarkannya standar SQL oleh ANSI. Standar ini sering disebut dengan SQL86.Standar tersebut kemudian diperbaiki pada tahun 1989 kemudian diperbaiki lagi pada tahun 1992. Versi terakhir dikenal dengan SQL92. Pada tahun 1999 dikeluarkan standar baru yaitu SQL99 atau disebut juga SQL99, akan tetapi kebanyakan implementasi mereferensi pada SQL92.
Saat ini sebenarnya tidak ada server basis data yang 100% mendukung SQL92. Hal ini disebabkan masing-masing server memiliki dialek masing-masing.
Pemakaian dasar
Secara umum, SQL terdiri dari dua bahasa, yaitu Data Definition Language (DDL) dan Data Manipulation Language (DML). Implementasi DDL dan DML berbeda untuk tiap sistem manajemen basis data (SMBD), namun secara umum implementasi tiap bahasa ini memiliki bentuk standar yang ditetapkan ANSI. Artikel ini akan menggunakan bentuk paling umum yang dapat digunakan pada kebanyakan SMBD.
Data Definition Language
DDL digunakan untuk mendefinisikan, mengubah, serta menghapus basis data dan objek-objek yang diperlukan dalam basis data, misalnya tabel, view, user, dan sebagainya. Secara umum, DDL yang digunakan adalah nama_field2 tipe_data, 4 untuk membuat objek baru, nama_field2 tipe_data, 5 untuk menggunakan objek, nama_field2 tipe_data, 6 untuk mengubah objek yang sudah ada, dan nama_field2 tipe_data, 7 untuk menghapus objek. DDL biasanya digunakan oleh administrator basis data dalam pembuatan sebuah aplikasi basis data.
|