Bagaimana untuk memasukkan sifar atau rentetan kosong ke dalam lajur MySQL yang ditakrifkan sebagai NOT NULL?

WBOY
Lepaskan: 2023-09-19 13:57:14
ke hadapan
1490 orang telah melayarinya

如何将零或空字符串插入到定义为 NOT NULL 的 MySQL 列中?

Mengisytiharkan lajur sebagai "BUKAN NULL" bermakna lajur tidak menerima nilai NULL, tetapi menerima sifar (0), dan rentetan kosong itu sendiri ialah nilai. Jadi jika kita ingin memasukkan sifar atau rentetan kosong ke dalam lajur MySQL yang ditakrifkan sebagai NOT NULL, tidak akan ada masalah. Ini akan menjadi jelas apabila membandingkan 0 dan rentetan kosong kepada NULL -

mysql> Select 0 IS NULL, 0 IS NOT NULL;
+-----------+---------------+
| 0 IS NULL | 0 IS NOT NULL |
+-----------+---------------+
|         0 |             1 |
+-----------+---------------+
1 row in set (0.00 sec)
Salin selepas log masuk

Set hasil di atas menunjukkan bahawa sifar (0) bukan NULL. Ini bermakna sifar (0) itu sendiri adalah nilai, kerana kita tahu bahawa NULL bermakna tiada nilai.

mysql> Select '' IS NULL, '' IS NOT NULL;
+------------+----------------+
| '' IS NULL | '' IS NOT NULL |
+------------+----------------+
|          0 |              1 |
+------------+----------------+
1 row in set (0.00 sec)
Salin selepas log masuk

Set keputusan di atas menunjukkan bahawa rentetan kosong (‘’) bukan NULL. Ini bermakna rentetan kosong ('') itu sendiri adalah nilai, kerana kita tahu bahawa NULL bermakna tiada nilai.

Contoh

mysql> create table test(id int NOT NULL, Name Varchar(10));
Query OK, 0 rows affected (0.19 sec)

mysql> Insert into test6(id, name) values('1', 'Gaurav'),('0','Rahul'),('','Aarav');
Query OK, 3 rows affected, 1 warning (0.08 sec)
Records: 3 Duplicates: 0 Warnings: 1

Warning (Code 1366): Incorrect integer value: '' for column 'id' at row 3

mysql> Select * from test;
+----+--------+
| id | Name |
+----+--------+
|  1 | Gaurav |
|  0 | Rahul  |
|  0 | Aarav  |
+----+--------+
3 rows in set (0.00 sec)
Salin selepas log masuk

Seperti yang anda lihat daripada set hasil di atas, kita boleh memasukkan sifar (0) rentetan kosong ("") ke dalam lajur yang diisytiharkan sebagai BUKAN NULL.

Atas ialah kandungan terperinci Bagaimana untuk memasukkan sifar atau rentetan kosong ke dalam lajur MySQL yang ditakrifkan sebagai NOT NULL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:tutorialspoint.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!