Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Apa itu Skema Basis Data?

Dalam istilah database, sebuah skema (diucapkan “skee-muh” atau “skee-mah”) adalah organisasi dan struktur database. Keduanya skema dan skema dapat digunakan sebagai bentuk jamak.

Skema berisi objek skema, yang dapat berupa tabel, kolom, tipe data, tampilan, prosedur tersimpan, hubungan, kunci utama, kunci asing, dll.

Skema database dapat direpresentasikan dalam diagram visual, yang menunjukkan objek database dan hubungannya satu sama lain.

Di atas adalah contoh sederhana diagram skema. Ini menunjukkan tiga tabel, beserta tipe datanya, hubungan antar tabel, serta kunci utama dan kunci asingnya.

Berikut adalah contoh skema database yang lebih kompleks:

Dalam hal ini, diagram skema telah dipisahkan menjadi empat bagian:

  • Data Pelanggan :Data yang terkait dengan pelanggan, seperti nama, alamat, dll
  • Bisnis :Data yang diperlukan untuk menjalankan bisnis, seperti staf, lokasi toko, detail pembayaran, dll
  • Inventaris :Detail pada semua produk. Dalam hal ini produk berupa film, sehingga berisi data-data seperti judul film, kategorinya, aktornya, dll.
  • Tampilan :Tampilan khusus pada data yang digunakan untuk penilaian.

Jadi dengan melihat diagram skema ini, kita dapat melanjutkan dan membuat database. Faktanya, MySQL Workbench memungkinkan Anda membuat CREATE TABLE skrip langsung dari diagram. Anda kemudian dapat menggunakan skrip untuk membuat database. Anda bahkan dapat merekayasa balik database menjadi diagram.

Apakah Skema dan Database adalah Hal yang Sama?

Ada banyak kebingungan tentang skema ketika datang ke database. Pertanyaan yang sering muncul adalah apakah ada perbedaan antara skema dan database dan jika ya, apa perbedaannya.

Tergantung Vendornya

Salah satu alasan kebingungan ini adalah bahwa sistem database cenderung mendekati skema dengan caranya sendiri.

  • Dokumentasi MySQL menyatakan bahwa secara fisik, skema identik dengan database . Oleh karena itu, skema dan database adalah hal yang sama .
  • Namun, dokumentasi Oracle Database menyatakan bahwa objek tertentu dapat disimpan di dalam database tetapi tidak di dalam skema. Oleh karena itu, skema dan database adalah dua hal yang berbeda .
  • Dan menurut artikel teknis SQL Server ini, skema adalah entitas terpisah di dalam database. Jadi, keduanya dua hal yang berbeda .

Jadi, bergantung pada RDBMS yang Anda gunakan, skema dan database mungkin sama atau tidak sama.

Bagaimana dengan Standar SQL?

Standar SQL ISO/IEC 9075-1 mendefinisikan skema sebagai kumpulan deskriptor bernama persisten .

Jika Anda bingung sebelumnya, semoga saya tidak memperburuknya…

Arti Luas

Alasan lain untuk kebingungan mungkin karena fakta bahwa istilah skema memiliki arti yang begitu luas. Ini memiliki konotasi yang berbeda dalam konteks yang berbeda.

Kata skema berasal dari kata Yunani skhēma , yang artinya bentukangka , bentuk , atau rencana .

Skema digunakan dalam psikologi untuk menggambarkan pola pemikiran atau perilaku yang terorganisir yang mengatur kategori informasi dan hubungan di antara mereka.

Sebelum merancang database, kita juga perlu melihat kategori informasi dan hubungan di antara mereka. Kita perlu membuat konseptual skema bahkan sebelum kita mulai dengan fisik skema dalam DBMS.

Dalam pengembangan perangkat lunak, ketika mendiskusikan skema, seseorang dapat mendiskusikan konseptual skema, fisik skema, internal skema, eksternal skema, logis skema, dll. Masing-masing memiliki arti khususnya sendiri.

Definisi Skema menurut DBMS

Berikut adalah definisi singkat skema dari tiga sistem database terkemuka:

MySQL

Secara konseptual, skema adalah sekumpulan objek database yang saling terkait, seperti tabel, kolom tabel, tipe data kolom, indeks, kunci asing, dan sebagainya.

….

Di MySQL, secara fisik, sebuah skema identik dengan database . Anda dapat mengganti kata kunci SCHEMA bukannya DATABASE dalam sintaks SQL MySQL, misalnya menggunakan CREATE SCHEMA alih-alih CREATE DATABASE .

Sumber: “Glosarium MySQL”. Panduan Referensi MySQL 5.7. MySQL. Diakses pada 6 Juni 2016.

SQL Server

Nama tabel, field, tipe data, dan kunci utama dan asing dari database.

"Glosarium". Dokumentasi Teknis SQL Server 2016. Jaringan Pengembang Microsoft. Diakses pada 6 Juni 2016.

 Database Oracle

Sistem skema Oracle Database sangat berbeda dengan sistem lainnya. Skema Oracle sangat terkait dengan pengguna database.

Skema adalah kumpulan struktur logis data, atau objek skema. Skema dimiliki oleh pengguna database dan memiliki nama yang sama dengan pengguna tersebut. Setiap pengguna memiliki satu skema.

Sumber: “Objek Database”. Oracle Database Online Documentation 12c Rilis 1 (12.1). Pusat Bantuan Oracle. Diakses pada 6 Juni 2016.

Artikel tentang definisi skema oleh DBMS ini memberikan detail lebih lanjut.

Membuat Skema

Terlepas dari perbedaan dalam mendefinisikan skema, masing-masing dari ketiga DBMS tersebut mendukung CREATE SCHEMA pernyataan.

Dan di situlah kesamaan berakhir.

MySQL

Di MySQL, CREATE SCHEMA membuat database.

Ini karena CREATE SCHEMA adalah sinonim untuk CREATE DATABASE . Dengan kata lain, Anda dapat menggunakan CREATE SCHEMA atau CREATE DATABASE untuk melakukan hal yang sama.

Database Oracle

Di Oracle Database, CREATE SCHEMA pernyataan tidak benar-benar membuat skema. Ini karena skema sudah dibuat dengan setiap pengguna database.

Di Oracle, CREATE USER pernyataan menciptakan skema.

Di Oracle, CREATE SCHEMA pernyataan memungkinkan Anda mengisi skema dengan tabel dan tampilan serta memberikan hak istimewa pada objek tersebut tanpa harus mengeluarkan beberapa pernyataan SQL dalam beberapa transaksi.

SQL Server

Di SQL Server, CREATE SCHEMA akan membuat skema dengan nama yang Anda berikan.

Tidak seperti MySQL, CREATE SCHEMA pernyataan membuat skema yang didefinisikan secara terpisah ke database.

Tidak seperti Oracle, CREATE SCHEMA pernyataan sebenarnya menciptakan skema.

Di SQL Server, setelah Anda membuat skema, Anda dapat menambahkan pengguna dan objek ke dalamnya.

Kesimpulan

Istilah skema dapat digunakan dalam banyak konteks yang berbeda. Dalam konteks pembuatan skema dalam sistem pengelolaan database tertentu, Anda harus bekerja dengan DBMS yang mendefinisikan skema.

Dan saat Anda beralih ke DBMS baru, pastikan untuk mencari tahu bagaimana sistem tersebut mendefinisikan skema.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Apa yang Harus Diperiksa jika Pemanfaatan Memori MySQL Tinggi?

  2. Mengapa kode SQL ini memberikan kesalahan 1066 (Bukan tabel/alias unik:'pengguna')?

  3. Server MySQL kehabisan memori atau tidak dapat dijalankan

  4. PILIH * DARI beberapa tabel. MySQL

  5. Contoh hubungan banyak-ke-banyak