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

Kendala terminologi MySQL vs perbedaan kunci asing?

Ya, kunci asing adalah jenis kendala. MySQL memiliki dukungan yang tidak merata untuk kendala:

  • PRIMARY KEY :ya sebagai batasan tabel dan batasan kolom.
  • FOREIGN KEY :ya sebagai batasan tabel, tetapi hanya dengan mesin penyimpanan InnoDB dan BDB; sebaliknya diuraikan tetapi diabaikan.
  • CHECK :diuraikan tetapi diabaikan di semua mesin penyimpanan.
  • UNIQUE :ya sebagai batasan tabel dan batasan kolom.
  • NOT NULL :ya sebagai batasan kolom.
  • DEFERRABLE dan atribut kendala lainnya:tidak ada dukungan.

CONSTRAINT klausa memungkinkan Anda memberi nama batasan secara eksplisit, baik untuk membuat metadata lebih mudah dibaca atau menggunakan nama saat Anda ingin menghapus batasan. Standar SQL mengharuskan CONSTRAINT klausa adalah opsional. Jika Anda mengabaikannya, RDBMS akan membuat nama secara otomatis, dan nama tersebut tergantung pada implementasinya.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Buat tabel database ActiveRecord tanpa kolom :id?

  2. Melakukan perhitungan di MySQL vs PHP

  3. Bagaimana cara MEMILIH empat item terbaru per kategori?

  4. ORDER BY nilai yang sama di MySQL

  5. Mengembalikan baris 'terakhir' dari setiap 'grup menurut' di MySQL