Rumah  >  Artikel  >  pangkalan data  >  BOOLEAN atau TINYINT untuk menyimpan nilai dalam MySQL?

BOOLEAN atau TINYINT untuk menyimpan nilai dalam MySQL?

PHPz
PHPzke hadapan
2023-09-18 18:53:131454semak imbas

BOOLEAN 或 TINYINT 在 MySQL 中存储值?

Kedua-dua BOOLEAN dan BOOL MySQL adalah bersamaan dengan TINYINT(1). Setiap kali anda membuat lajur menggunakan jenis data BOOLEAN dan BOOL, MySQL secara tersirat menukar BOOLEAN dan BOOL kepada TINYINT(1). BOOLEAN dan BOOL adalah bersamaan dengan TINYINT(1) kerana ia adalah sinonim.

Buat jadual menggunakan jenis data BOOLEAN. Pernyataan pertanyaan untuk membuat jadual.

mysql> create table BooleanDemo
   -> (
   -> IsOn BOOLEAN
   -> );
Query OK, 0 rows affected (0.58 sec)

Sekarang semak struktur dalaman jadual di atas. Pertanyaannya adalah seperti berikut −

mysql> show create table BooleanDemo;

Output

+-------------+----------------------------------------------------------------------------------------------------------------------------------+
| Table       | Create Table                                                                                                                     |
+-------------+----------------------------------------------------------------------------------------------------------------------------------+
| BooleanDemo | CREATE TABLE `booleandemo` ( `IsOn` tinyint(1) DEFAULT NULL) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci    |
+-------------+----------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.01 sec)

Melihat pada contoh output di atas, BOOLEAN ditukar kepada tinyint(1). Perkara yang sama berlaku untuk jenis data BOOL. Pertanyaan untuk mencipta jadual adalah seperti yang ditunjukkan di bawah −

mysql> create table BOOLDemo
   -> (
   -> validUser BOOL
   -> );
Query OK, 0 rows affected (0.61 sec)

Sekarang semak struktur dalaman jadual. Pertanyaannya adalah seperti berikut -

mysql> show create table BOOLDemo;

output

+----------+------------------------------------------------------------------------------------------------------------------------------------+
| Table    | Create Table                                                                                                                       |
+----------+------------------------------------------------------------------------------------------------------------------------------------+
| BOOLDemo | CREATE TABLE `booldemo` (`validUser` tinyint(1) DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci    |
+----------+------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)

Atas ialah kandungan terperinci BOOLEAN atau TINYINT untuk menyimpan nilai dalam MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:tutorialspoint.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam