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

Mengapa saya harus menggunakan kunci asing jika saya dapat menggunakan WHERE?

Itu tidak sepenuhnya diperlukan untuk kueri, itu benar. Itu ada karena beberapa alasan:

  1. Sebagai batasan di atas meja untuk menghentikan Anda memasukkan sesuatu yang tidak mengarah ke apa pun;
  2. Sebagai petunjuk untuk pengoptimal; dan
  3. Untuk alasan historis di mana lebih dibutuhkan.

(1) mungkin yang penting dari ketiganya. Ini disebut integritas referensial . Artinya jika ada nilai dalam foreign key maka akan ada record yang sesuai dengan nilai tersebut sebagai primary key di tabel parent.

Meskipun demikian, tidak semua database mendukung integritas referensial (misalnya tabel MySQL/MyISAM) dan database yang tidak mendukungnya (untuk alasan kinerja).



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Memigrasikan data ke Firebase dari MySQL

  2. Perlu Mengonversi Kolom menjadi Baris di MYSQL

  3. Bagaimana saya bisa membuat tabel di MySQL yang disebut pesanan?

  4. Kinerja MYSQL lambat menggunakan filesort

  5. Koneksi JDBC- Class.forName vs Class.forName().newInstance?