插入新行时,是否必须在查询中包含null?

时间:2012-03-25 02:24:12

标签: mysql

例如,假设我有一个包含10列的表,但我将它们全部默认为null,当我想插入一行时,我只想在其中插入5个值。在插入新行时,是否需要在查询中包含默认为null的列,或者我是否可以排除它们并仅指定要将值放入的列的值?

2 个答案:

答案 0 :(得分:3)

您无需键入每一列 您可以像这样指定要插入的列:

INSERT INTO mytable (mycol) VALUES ('foo');

参考:http://dev.mysql.com/doc/refman/5.5/en/insert.html


如果您要省略列列表,则需要为所有列输入值:

INSERT INTO mytable VALUES ('foo',NULL,NULL,...);
                   ^ no column list, must specify a value for all columns

答案 1 :(得分:1)

是的,你可以只指定要插入数据的列(假设你符合NOT NULL限制),并按你想要的顺序。