0
CREATE TABLE `test` (
`id` INT(10) UNSIGNED NOT NULL,
`c1` VARCHAR(60) NULL DEFAULT NULL,
`c2` VARCHAR(60) NOT NULL,
PRIMARY KEY (`id`)
 )

在 information_schema.columns.COLUMN_DEFAULT 中,c1、c2 列都包含 NULL,但 c2 没有默认值。

如何获得真正的 COLUMN_DEFAULT 值?

4

1 回答 1

2

information_schema.columns, if COLUMN_DEFAULTis NULLand IS_NULLABLEis NOthen 中没有默认值。

但基本上您可以将其视为:默认值(如果未指定)始终为NULL. 因此,c2不允许是NULL,但它会默认为NULL,因此总是需要在插入语句中指定。

注意:指定为的字段NOT NULL不需要能够表示NULL,因此理论上它可以占用(稍微)更少的空间。

于 2013-01-22T06:59:02.303 回答