MySQL在运行INSERT INTO语句时返回什么,而没有同时给出列名和值?
当我们运行INSERTINTO语句而没有给出列名和值时,MySQL将存储NULL作为表中列的值。考虑下面给出的示例,其中我们使用以下查询创建了表“Student”-
mysql> Create table Student(RollNO INT, Name Varchar(20), Class Varchar(15));
现在,我们可以运行INSERTINTO语句,而无需给出列的名称和值,如下所示:
mysql> Insert into Student() Values();
我们可以从下面的查询中看到MySQL将NULL存储为column的值。
mysql> Select * from Student; +--------+------+-------+ | RollNO | Name | Class | +--------+------+-------+ | NULL | NULL | NULL | +--------+------+-------+ 1 row in set (0.00 sec)
每次我们运行INSERTINTO语句时都没有给出列名和值,MySQL都会将NULL存储为表中列的值。
mysql> Insert into Student() Values(); mysql> Select * from Student; +--------+------+-------+ | RollNO | Name | Class | +--------+------+-------+ | NULL | NULL | NULL | | NULL | NULL | NULL | +--------+------+-------+ 2 rows in set (0.00 sec)