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

enum atau char(1) di MySQL

Juga tidak. Anda biasanya menggunakan tinyint dengan tabel pencarian

  • char(1) akan sedikit lebih lambat karena membandingkan menggunakan collation

  • kebingungan:Saat Anda memperluas lebih dari A dan P

  • menggunakan huruf membatasi Anda saat Anda menambahkan lebih banyak jenis. Lihat poin terakhir.

  • setiap sistem yang saya lihat memiliki lebih dari satu klien, misalnya pelaporan. A dan P harus diselesaikan ke Aktif dan Pasif untuk di setiap kode klien

  • perpanjangan:tambahkan satu jenis lagi ("S" untuk "Ditangguhkan") Anda dapat satu baris ke tabel pencarian atau mengubah banyak kode dan batasan. Dan kode klien Anda juga

  • pemeliharaan:logika ada di 3 tempat:batasan basis data, kode basis data, dan kode klien. Dengan pencarian dan kunci asing, itu bisa di satu tempat

  • Enum tidak portabel

Di sisi positifnya menggunakan satu huruf atau Enum

Catatan:ada DBA.SE terkait pertanyaan MySQL tentang Enum . Rekomendasinya adalah menggunakan tabel pencarian di sana juga.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Php mysql pdo query:isi variabel dengan hasil query

  2. memilih nomor tertentu sebagai nilai kolom dalam kueri

  3. meta_query, bagaimana cara mencari menggunakan relasi OR &AND?

  4. Berbagi database (mysql) antara aplikasi Django dengan router Database

  5. Pengecoran MySQL dari -1 mengembalikan 18446744073709551615