Apabila kami memasukkan rentetan kosong ke dalam lajur MySQL yang diisytiharkan sebagai NOT NULL, perwakilan rentetan kosong dalam set hasil bergantung pada jenis data. Kami tahu bahawa apabila memasukkan rentetan kosong, kami menyediakan MySQL dengan nilai yang diwakili sebagai integer sebagai INT 0.
Sekarang, jika lajur mempunyai jenis data INTEGER, maka MySQL akan memaparkan 0 dalam set hasil seperti yang ditunjukkan di bawah Rentetan kosong telah dipetakan ke sifar integer.
mysql> create table test(id int NOT NULL, Name Varchar(10)); Query OK, 0 rows affected (0.19 sec) mysql> Insert into test(id, name) values('1', 'Gaurav'),('0','Rahul'),('','Aarav'); Query OK, 3 rows affected, 1 warning (0.08 sec) Records: 3 Duplicates: 0 Warnings: 1 mysql> Select * from test; +----+--------+ | id | Name | +----+--------+ | 1 | Gaurav | | 0 | Rahul | | 0 | Aarav | +----+--------+ 3 rows in set (0.00 sec)
Tetapi jika lajur mempunyai jenis data lain (cth. VARCHAR), maka MySQL akan menunjukkan rentetan kosong dalam set hasil.
mysql> create table test123(id Varchar(10) NOT NULL, Name Varchar(10)); Query OK, 0 rows affected (0.19 sec) mysql> Insert into test123(id, name) values('1', 'Gaurav'),('0','Rahul'),('','Aarav'); Query OK, 3 rows affected, 1 warning (0.08 sec) Records: 3 Duplicates: 0 Warnings: 1 mysql> Select * from test123; +----+--------+ | id | Name | +----+--------+ | 1 | Gaurav | | 0 | Rahul | | | Aarav | +----+--------+ 3 rows in set (0.00 sec)
Daripada contoh di atas, kita dapat melihat peranan yang dimainkan oleh jenis data apabila kita memasukkan rentetan kosong ke dalam lajur MySQL yang diisytiharkan sebagai BUKAN NULL.
Atas ialah kandungan terperinci Apakah peranan yang dimainkan oleh jenis data apabila saya memasukkan rentetan kosong ke dalam lajur MySQL yang diisytiharkan BUKAN NULL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!