2012-11-13 15 views
0

我问的是,当在MySQL数据库中插入一行时,是否需要包含空列。举例来说,当我使用phpMyAdmin插入行,它会做这样的事情:进行MySQL INSERT查询时,是否需要NULL?

INSERT INTO table 
(
`col1`, 
`col2`, 
`col3`, 
`col4` 
) 
VALUES 
(
'value1', 
NULL, 
NULL, 
'value2' 
) 

假设字段默认为空,我可以从插入语句删除列和NULL值?

+0

简短的回答:是的,你可以:O) –

回答

3

默认情况下,当您创建列时,它可以为空(,除非您已设置NOT NULL)。所以当你想只为特定列插入记录时,可以省略该列,并且其值自动为null

INSERT INTO table (`col1` ,`col4`) 
      VALUES ('value1','value2') 
2

你可以删除它们。

,如果有一个默认值 - 你会得到相反。

2

如果列名是省略,是:在默认值 将假设。


NULL通常是 - 但并不总是! - 可为空的列的默认值。必须咨询模式以验证这一假设。

+0

阅读帖子:“我可以删除列和空值” –

+0

我没说你的答案是错的,但它听起来像:“如果我付为此,我可以拥有它吗?“ - “是的,如果你付钱的话!” :o) –

+0

@SirRufo是的,你是对的,我已经*超过了资格*这个问题的回答。 – 2012-11-13 02:24:42