Model Relasional adalah model data logika yang paling populer, dan merupakan basis database SQL.
Model Relasional didasarkan pada dua konsep sederhana:
- tabel
- hubungan
Model relasional berasal dari tahun 1969 dan karya Edgar F. Codd, seorang ilmuwan komputer Inggris. Meskipun sebagai pemrogram komputer kita terbiasa melihat dengan rasa ingin tahu pada hal-hal baru yang cemerlang, sebuah teknologi yang dapat menjadi pusat dalam segala hal tentang komputer selama 50 tahun pasti patut dipelajari.
Fakta bahwa model didasarkan pada tabel membuatnya sangat intuitif untuk digunakan, karena kita terbiasa menggunakan tabel untuk mengatur berbagai hal. Pikirkan tentang spreadsheet Excel, misalnya.
Dengan database berbasis SQL, seperti PostgreSQL, Oracle, MySQL, SQLite dan MS SQL Server, dan banyak lainnya, data yang dianalisis menggunakan Model ER dapat dimodelkan menggunakan model relasional dan segera diubah menjadi format database SQL, yang dapat dianggap sebagai implementasi dunia nyata dari model relasional, tetapi kita akan membicarakannya di postingan lain.
Dalam posting ini saya ingin berbicara tentang teori dan konsep yang menjadi dasar model relasional, tidak dinyatakan dalam istilah matematika tetapi apa artinya dalam praktik.
Jika Anda seorang pelajar, Anda mungkin menemukan bahwa apa yang saya tulis di sini bukanlah apa yang tertulis di buku teks Anda, tetapi mungkin Anda dapat membacanya dengan lebih mudah untuk memahami konsep yang lebih formal yang diungkapkan dalam materi pembelajaran Anda.
Tabel
Dalam model relasional, sebuah tabel adalah kumpulan item.
Ini diatur dalam baris dan kolom:
Nama | Usia |
---|---|
Flavio | 36 |
Bagus | 7 |
Syd | 6 |
Tuple
Setiap entri dalam tabel disebut tupel . Anda juga dapat menggunakan istilah catatan atau baris .
Tuple mewakili baris tabel, seperti ini:
Flavio | 36 |
Atribut
Atribut adalah satu item dalam tuple.
Dalam contoh ini:
Flavio | 36 |
"Flavio" adalah atribut. 36 adalah atribut lain.
Tuple itu unik
Setiap tuple dalam tabel adalah unik.
Dalam model relasional, kita tidak boleh memiliki data duplikat, artinya setiap baris dalam tabel harus berbeda setidaknya dalam satu atribut.
Kunci relasi
Hal yang memastikan tuple adalah unik adalah kunci relasi .
Kuncinya adalah satu atribut yang harus diidentifikasi secara unik sebuah tupel.
Jika kunci relasi adalah sekumpulan atribut, itu harus non-redundan . Artinya, jika kita menghapus salah satu atribut kunci, kunci tersebut tidak dapat menjamin keunikannya.
Jika lebih dari satu kunci dapat ditentukan, salah satu kunci tersebut akan diidentifikasi sebagai kunci utama .
Batasan integritas kunci
Atribut kunci mereka dari tuple mana pun dalam tabel harus tidak pernah nol , dan harus tidak pernah mengulangi .
Diberikan sebuah kunci, kita harus dapat menunjuk ke tuple/baris tertentu tanpa ambiguitas.
Konstrain domain
Setiap atribut memiliki aturan tentang nilai yang dapat dipegangnya .
Jika kami memutuskan untuk menyimpan angka, kami tidak dapat menyimpan string, misalnya. Dan kami mungkin memutuskan untuk tidak menyimpan string yang lebih panjang dari 10 karakter untuk nama.
Kami juga dapat menyebutnya jenis .
Batasan integritas referensial
Jika sebuah tabel berisi referensi ke tabel sekunder, atau tupel lain dalam tabel yang sama, maka kita harus mematuhi aturan yang mencegah referensi rusak.
Secara khusus, kita harus menghindari melanggar referensi dengan:
- menghindari menghapus atau mengedit kunci utama dari catatan yang kita tunjuk, di tabel lain.
- hindari menyisipkan catatan baru dengan kunci yang tidak ada untuk diarahkan ke tabel lain.
- hindari mengubah kunci record yang kita tunjuk, tanpa memastikan bahwa kunci baru ada di tabel lain.
DBMS (Sistem Manajemen Basis Data) akan menerapkan langkah-langkah untuk membantu kami menerapkan integritas referensial.