Maison  >  Article  >  base de données  >  Quel rôle joue le type de données lorsque j'insère une chaîne vide dans une colonne MySQL déclarée NOT NULL ?

Quel rôle joue le type de données lorsque j'insère une chaîne vide dans une colonne MySQL déclarée NOT NULL ?

WBOY
WBOYavant
2023-09-09 22:29:021254parcourir

当我将空字符串插入声明为 NOT NULL 的 MySQL 列时,数据类型起什么作用?

Lorsque nous insérons une chaîne vide dans une colonne MySQL déclarée NON NULL, la représentation de la chaîne vide dans le jeu de résultats dépend du type de données. Nous savons que lors de l'insertion d'une chaîne vide, nous fournissons à MySQL la valeur représentée sous forme d'entier comme INT 0.

Maintenant, si la colonne a un type de données INTEGER, alors MySQL affichera 0 dans le jeu de résultats comme indiqué ci-dessous. La chaîne vide a été mappée sur le zéro entier.

Exemple

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)

Mais si la colonne a un autre type de données (par exemple VARCHAR), alors MySQL affichera une chaîne vide dans le jeu de résultats.

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)

À partir de l'exemple ci-dessus, nous pouvons voir quel rôle joue le type de données lorsque nous insérons une chaîne vide dans une colonne MySQL déclarée comme NOT NULL.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer