Wenn wir eine leere Zeichenfolge in eine als NOT NULL deklarierte MySQL-Spalte einfügen, hängt die Darstellung der leeren Zeichenfolge in der Ergebnismenge vom Datentyp ab. Wir wissen, dass wir MySQL beim Einfügen einer leeren Zeichenfolge den Wert bereitstellen, der als Ganzzahl als INT 0 dargestellt wird.
Wenn die Spalte nun den Datentyp INTEGER hat, zeigt MySQL im Ergebnissatz wie unten gezeigt 0 an. Die leere Zeichenfolge wurde der Ganzzahl Null zugeordnet.
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)
Wenn die Spalte jedoch einen anderen Datentyp hat (z. B. VARCHAR), zeigt MySQL im Ergebnissatz eine leere Zeichenfolge an.
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)
Aus dem obigen Beispiel können wir sehen, welche Rolle der Datentyp spielt, wenn wir eine leere Zeichenfolge in eine als NOT NULL deklarierte MySQL-Spalte einfügen.
Das obige ist der detaillierte Inhalt vonWelche Rolle spielt der Datentyp, wenn ich eine leere Zeichenfolge in eine MySQL-Spalte einfüge, die als NOT NULL deklariert ist?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!