在没有给出列名和值的情况下运行 INSERT INTO 语句时 MySQL 返回什么?

在没有给出列名和值的情况下运行 INSERT INTO 语句时 MySQL 返回什么?

当我们运行 INSERT INTO 语句而不给出列名和值时,MySQL 会将 NULL 存储为表列的值。考虑下面给出的示例,其中我们使用以下查询创建了一个表“Student” -

mysql> Create table Student(RollNO INT, Name Varchar(20), Class Varchar(15));
Query OK, 0 rows affected (0.17 sec)

登录后复制

现在,我们可以运行 INSERT INTO 语句,而无需给出列名称和值,如下所示 -

mysql> Insert into Student() Values();
Query OK, 1 row affected (0.02 sec)

登录后复制

从下面的查询中我们可以看到MySQL将NULL存储为列的值。

mysql> Select * from Student;

+--------+------+-------+
| RollNO | Name | Class |
+--------+------+-------+
| NULL | NULL | NULL |
+--------+------+-------+

1 row in set (0.00 sec)

登录后复制

每次我们运行 INSERT INTO 语句而不同时给出列名和值时,MySQL 都会将 NULL 存储为表的列的值。

mysql> Insert into Student() Values();
Query OK, 1 row affected (0.03 sec)

mysql> Select * from Student;

+--------+------+-------+
| RollNO | Name | Class |
+--------+------+-------+
| NULL | NULL | NULL |
| NULL | NULL | NULL |
+--------+------+-------+

2 rows in set (0.00 sec)

登录后复制

以上就是在没有给出列名和值的情况下运行 INSERT INTO 语句时 MySQL 返回什么?的详细内容,更多请关注每日运维网(www.mryunwei.com)其它相关文章!