Elemen model database relasional, bagaimana melakukannya, contohnya

Elemen model database relasional, bagaimana melakukannya, contohnya

Dia Model relasional database Ini adalah metode untuk menyusun data menggunakan hubungan, melalui struktur berbentuk grid, yang terdiri dari kolom dan baris. Itu adalah prinsip konseptual dari database relasional. Diusulkan oleh Edgar f. Codd pada tahun 1969.

Sejak itu telah menjadi model database dominan untuk aplikasi komersial, jika dibandingkan dengan model basis data lainnya, seperti hierarkis, jaringan dan objek.

Sumber: Pixabay.com

Codd tidak tahu yang sangat vital dan berpengaruh yang akan menjadi pekerjaannya sebagai platform untuk database relasional. Kebanyakan orang sangat akrab dengan ekspresi fisik suatu hubungan dalam suatu database: tabel.

Model relasional didefinisikan sebagai database yang memungkinkan untuk mengelompokkan elemen datanya dalam satu atau lebih tabel independen, yang dapat terkait satu sama lain dengan menggunakan bidang umum untuk setiap tabel terkait.

[TOC]

Manajemen Basis Data

Basis data mirip dengan spreadsheet. Namun, hubungan yang dapat dibuat antara tabel memungkinkan database relasional untuk secara efisien menyimpan sejumlah besar data, yang dapat dipulihkan secara efektif.

Tujuan dari model relasional adalah untuk memberikan metode deklaratif untuk menentukan data dan konsultasi: pengguna secara langsung mendeklarasikan informasi apa yang berisi database dan informasi apa yang Anda inginkan darinya.

Di sisi lain, mereka membiarkan perangkat lunak sistem manajemen basis data bertanggung jawab untuk menggambarkan struktur data untuk penyimpanan dan prosedur pemulihan untuk merespons.

Sebagian besar database relasional menggunakan bahasa SQL untuk konsultasi dan definisi data. Saat ini ada banyak sistem manajemen database relasional atau RDBMS (sistem manajemen basis data relasional), seperti Oracle, IBM DB2 dan Microsoft SQL Server.

Karakteristik dan elemen

- Semua data secara konseptual direpresentasikan sebagai disposisi data yang tertib di baris dan kolom, yang disebut hubungan atau tabel.

- Setiap meja harus memiliki header dan tubuh. Judulnya hanyalah daftar kolom. Tubuh adalah set data yang mengisi tabel, diatur dalam baris.

- Semua nilai pendakian. Yaitu, dalam posisi baris/kolom tertentu dalam tabel, hanya ada satu nilai unik.

-Item

Gambar berikut menunjukkan tabel dengan nama elemen dasarnya, yang membentuk struktur yang lengkap.

Tupla

Setiap baris data adalah Tupla, juga dikenal sebagai pendaftaran. Setiap baris adalah n-tupla, tetapi "n-" umumnya dikesampingkan.

Kolom

Setiap kolom tupla disebut atribut atau bidang. Kolom tersebut mewakili himpunan nilai yang dapat dimiliki atribut tertentu.

Petunjuk

Setiap baris memiliki satu atau lebih kolom yang disebut tabel. Nilai gabungan ini unik untuk semua baris tabel. Melalui kunci ini, setiap tupla akan diidentifikasi dengan cara yang univocal. Yaitu, kuncinya tidak dapat digandakan. Itu disebut kunci utama.

Di sisi lain, kunci eksternal atau sekunder adalah bidang tabel yang mengacu pada kunci utama dari beberapa tabel lainnya. Itu digunakan untuk merujuk ke tabel utama.

-Aturan Integritas

Saat merancang model relasional, beberapa kondisi yang harus dipenuhi dalam database, yang disebut aturan integritas didefinisikan.

Dapat melayani Anda: Macrocomputer: Sejarah, Karakteristik, Penggunaan, Contoh

Integritas kunci

Kunci utama harus unik untuk semua tupel dan tidak dapat memiliki nilai nol (nol). Jika tidak, Anda tidak akan dapat mengidentifikasi baris secara eksklusif.

Untuk kunci yang terdiri dari beberapa kolom, tidak satu pun dari kolom yang dapat berisi nol.

Integritas referensial

Setiap nilai kunci eksternal harus bertepatan dengan nilai kunci utama dalam tabel yang dirujuk atau primer.

Di tabel sekunder hanya satu baris yang dapat dimasukkan dengan kunci eksternal jika nilai itu ada di tabel utama.

Jika nilai perubahan kunci dalam tabel utama, untuk memperbarui atau menghilangkan baris, maka semua baris dalam tabel sekunder dengan kunci eksternal ini harus diperbarui atau dihilangkan sesuai dengan itu.

Cara membuat model relasional?

-Mengumpulkan data

Data yang diperlukan untuk menyimpannya dalam database harus dikumpulkan. Data ini dibagi menjadi tabel yang berbeda.

Jenis data yang sesuai harus dipilih untuk setiap kolom. Misalnya: bilangan bulat, angka floating point, teks, tanggal, dll.

-Tentukan kunci primer

Untuk setiap tabel Anda harus memilih kolom (atau beberapa kolom) sebagai kunci utama, yang secara unik akan mengidentifikasi setiap baris tabel. Kunci utama juga digunakan untuk merujuk ke tabel lain.

-Buat hubungan antar tabel

Basis data yang terdiri dari tabel independen dan tidak terkait memiliki sedikit tujuan.

Aspek yang paling penting dalam desain database relasional adalah mengidentifikasi hubungan antara tabel. Jenis hubungannya adalah:

Satu untuk banyak

Dalam database "kelas", seorang guru dapat mengajar di kelas nol atau lebih, sementara kelas diajarkan oleh seorang guru tunggal. Jenis hubungan ini dikenal sebagai satu bagi banyak orang.

Hubungan ini tidak dapat diwakili dalam satu tabel. Dalam database "Daftar Kelas" Anda dapat memiliki tabel yang disebut guru, yang menyimpan informasi tentang guru.

Untuk menyimpan kelas yang diajarkan oleh masing -masing guru, kolom tambahan dapat dibuat, tetapi masalah akan dihadapi: berapa banyak kolom yang dibuat.

Di sisi lain, jika Anda memiliki tabel yang disebut kelas, ia menyimpan informasi tentang kelas, kolom tambahan dapat dibuat untuk menyimpan informasi tentang guru.

Namun, seperti yang dapat diajarkan oleh seorang guru di banyak kelas, datanya akan dua kali lipat di banyak peringkat di tabel kelas.

Desain dua tabel

Oleh karena itu, dua tabel perlu dirancang: tabel kelas untuk menyimpan informasi tentang kelas, dengan kelas_id sebagai kunci utama, dan tabel induk untuk menyimpan informasi tentang guru, dengan guru_id sebagai kunci utama.

Maka Anda dapat membuat hubungan satu untuk banyak menyimpan kunci utama tabel master (master_id) di tabel kelas, seperti yang diilustrasikan di bawah ini.

Kolom master_id dalam tabel kelas dikenal sebagai kunci eksternal atau sekunder.

Untuk setiap nilai master_id dalam tabel master, mungkin ada nol atau lebih baris di tabel kelas. Untuk setiap nilai class_id dalam tabel kelas, hanya ada satu baris di tabel master.

Banyak ke banyak

Dalam database "penjualan produk", pesanan pelanggan dapat berisi beberapa produk, dan suatu produk dapat muncul dalam beberapa pesanan. Jenis hubungan ini dikenal sebagai banyak hal bagi banyak orang.

Itu dapat melayani Anda: TIK (teknologi informasi dan komunikasi)

Anda dapat memulai database "penjualan produk" dengan dua tabel: produk dan pesanan. Tabel Produk berisi informasi tentang produk, dengan produk sebagai kunci utama.

Di sisi lain, pesanan berisi pesanan pelanggan, dengan meminta sebagai kode utama.

Anda tidak dapat menyimpan produk yang diminta di dalam tabel yang dipesan, karena tidak diketahui berapa banyak kolom cadangan untuk produk. Pesanan juga tidak dapat disimpan dalam produk meja karena alasan yang sama.

Untuk mengakui hubungan yang banyak orang bagi banyak orang, perlu membuat tabel ketiga, yang dikenal sebagai tabel serikat (meminta), di mana setiap baris mewakili elemen dari urutan tertentu.

Untuk tabel yang diminta, kunci utama terdiri dari dua kolom: pesanan dan produk, mengidentifikasi setiap baris.

Kolom yang diminta dan produk dalam permintaan metode digunakan untuk merujuk pesanan dan produk. Oleh karena itu, mereka juga merupakan kunci eksternal untuk permintaan permintaan tersebut.

Satu per satu

Dalam database “Produk Penjualan”, suatu produk dapat memiliki informasi opsional, sebagai deskripsi tambahan dan gambarnya. Simpan di dalam produk akan menghasilkan banyak ruang kosong.

Oleh karena itu, Anda dapat membuat tabel lain (Extexts Product) untuk menyimpan data opsional. Hanya catatan untuk produk dengan data opsional yang akan dibuat.

Dua tabel, produk, dan produk, memiliki hubungan satu -untuk -satu. Untuk setiap baris di tabel produk ada baris maksimum di meja produk. Produk yang sama harus digunakan sebagai kunci utama untuk kedua tabel.

Keuntungan

Kemandirian Struktural

Dalam model database relasional, perubahan dalam struktur basis data tidak mempengaruhi akses ke data.

Ketika dimungkinkan untuk membuat perubahan dalam struktur database tanpa mempengaruhi kemampuan DBMS untuk mengakses data, dapat dikatakan bahwa independensi struktural telah tercapai.

Kesederhanaan konseptual

Model database relasional bahkan lebih sederhana pada tingkat konseptual daripada model hierarkis atau jaringan database.

Karena model database relasional merilis perancang dari detail penyimpanan fisik data, desainer dapat berkonsentrasi pada tampilan logis database.

Kemudahan Desain, Implementasi, Pemeliharaan dan Penggunaan

Model database relasional mencapai independensi data dan independensi struktur, yang membuat desain, pemeliharaan, administrasi dan penggunaan database jauh lebih mudah daripada model lainnya.

Kapasitas konsultasi ad-hoc

Kehadiran kapasitas konsultasi yang sangat kuat, fleksibel dan mudah digunakan adalah salah satu alasan utama popularitas model dasar relasional database yang sangat besar.

Bahasa konsultasi dari model basis data relasional, yang disebut bahasa konsultasi terstruktur atau SQL, membuat pertanyaan ad-hoc menjadi kenyataan. SQL adalah bahasa generasi keempat (4GL).

4GL memungkinkan pengguna untuk menentukan apa yang harus dilakukan, tanpa menentukan bagaimana itu harus dilakukan. Dengan demikian, dengan pengguna SQL dapat menentukan informasi apa yang mereka inginkan dan meninggalkan detail tentang cara mendapatkan informasi ke database.

Kerugian

Biaya perangkat keras

Model database relasional menyembunyikan kompleksitas implementasinya dan rincian penyimpanan fisik data pengguna.

Dapat melayani Anda: apa itu kode g? (Dengan contoh)

Untuk melakukan ini, sistem database relasional membutuhkan komputer dengan perangkat keras dan penyimpanan yang lebih kuat.

Oleh karena itu, RDBM membutuhkan mesin yang kuat untuk bekerja tanpa masalah. Namun, karena kekuatan pemrosesan komputer modern meningkat pada kecepatan eksponensial, kebutuhan akan daya pemrosesan lebih dalam skenario saat ini tidak lagi menjadi masalah yang sangat besar.

Kemudahan desain dapat menyebabkan desain yang buruk

Database relasional mudah dirancang dan digunakan. Pengguna tidak perlu mengetahui detail kompleks penyimpanan fisik data. Mereka tidak perlu tahu bagaimana data benar -benar disimpan untuk mengaksesnya.

Desain dan penggunaan penggunaan ini dapat mengarah pada pengembangan dan implementasi sistem manajemen basis data yang dirancang dengan sangat buruk. Karena database efisien, inefisiensi desain ini tidak akan terungkap ketika database dirancang dan ketika hanya ada sejumlah kecil data.

Seiring tumbuhnya database, database yang dirancang dengan buruk akan memperlambat sistem dan menyebabkan degradasi kinerja data dan korupsi.

Fenomena "pulau informasi"

Seperti yang dikatakan sebelumnya, sistem basis data relasional mudah diimplementasikan dan digunakan. Ini akan menciptakan situasi di mana terlalu banyak orang atau departemen akan membuat database dan aplikasi mereka sendiri.

Pulau -pulau informasi ini akan menghindari integrasi informasi, yang sangat penting untuk fungsi cairan dan efisien dari organisasi.

Basis data individual ini juga akan membuat masalah seperti inkonsistensi data, duplikasi data, redundansi data, dll.

Contoh

Misalkan database yang terdiri dari tabel, potongan, dan pengiriman yang mengikat. Struktur tabel dan beberapa catatan sampel disajikan di bawah ini:

Setiap baris dalam tabel pasokan diidentifikasi oleh nomor pemasok yang unik (SNO), secara unik mengidentifikasi setiap baris tabel. Demikian juga, setiap bagian memiliki nomor bagian yang unik (PNO).

Selain itu, tidak ada lebih dari satu pengiriman untuk kombinasi pemasok / bagian yang diberikan di meja pengiriman, karena kombinasi ini adalah kunci pengiriman utama, yang berfungsi sebagai tabel serikat, karena banyak hubungan dengan banyak orang dengan banyak orang.

Hubungan tabel dan pengiriman diberikan dengan memiliki kesamaan bidang PNO (nomor bagian) dan hubungan antara pemasok dan pengiriman muncul dari memiliki kesamaan bidang SNO (nomor pemasok).

Menganalisis tabel pengiriman dapat diperoleh sebagai informasi yang dikirim total 500 kacang dari pemasok suneet dan ankit, masing -masing 250.

Demikian juga, saya dikirim.Total 100 baut dari tiga pemasok yang berbeda. 500 sekrup biru dikirim dari pemasok suneet. Tidak ada pengiriman sekrup merah.

Referensi

  1. Wikipedia, The Free Encyclopedia (2019). Model relasional. Diambil dari: di.Wikipedia.org.
  2. Ravepedia (2019). Model relasional. Diambil dari: ravepedia.com.
  3. Diesh Thakur (2019). Model relasional. Catatan Ecomputer. Diambil dari: Ecomputernotes.com.
  4. Geeks untuk Geeks (2019). Model relasional. Diambil dari: geeksforgeeks.org.
  5. Nanyang Technological University (2019). Tutorial scart cepat tentang desain database relasional. Diambil dari: NTU.Edu.Sg.
  6. Adrienne Watt (2019). Bab 7 Model Data Relasional. BC Open Textbooks. Diambil dari: opentextbc.Ac.
  7. Toppr (2019). Database dan Skema Relasional. Diambil dari: toppr.com.