下面的sql表定义说明了我的MYSQL数据库中的create table语句之一,该数据库是由我公司的前开发人员开发的.
DROP TABLE IF EXISTS `classifieds`.`category_vehicles`;
CREATE TABLE `classifieds`.`category_vehicles`(
`adv_id_ref` BIGINT UNSIGNED NOT NULL,
`category_id_ref` TINYINT UNSIGNED NOT NULL,
`forsale_status` TINYINT (1) NOT NULL,
`vehicle_type_id_ref` TINYINT UNSIGNED NOT NULL,
`price` DOUBLE NULL DEFAULT NULL,
PRIMARY KEY (`adv_id_ref`)
) ENGINE = INNODB CHARSET = latin1 COLLATE = latin1_swedish_ci ;
Run Code Online (Sandbox Code Playgroud)
在那里看一下语句priceDOUBLE NULL DEFAULT NULL,
通常我正在使用
price DOUBLE NULL;
如果我想启用该列接受NULL值.
那么这3个陈述之间有什么区别?
1)priceDOUBLE NULL;
2)priceDOUBLE DEFAULT NULL;
3)priceDOUBLE NULL DEFAULT NULL;
非常感谢你.
a_h*_*ame 17
没有区别.NULL DEFAULT NULL是隐式默认值.
use*_*421 10
price DOUBLE NULL;
Run Code Online (Sandbox Code Playgroud)
price 是一个double,可以为null,其默认值为null.
price DOUBLE DEFAULT NULL;
Run Code Online (Sandbox Code Playgroud)
price 是一个double,可以为null,其默认值为null.
price DOUBLE NULL DEFAULT NULL;
Run Code Online (Sandbox Code Playgroud)
price 是一个double,可以为null,其默认值为null.
| 归档时间: |
|
| 查看次数: |
23393 次 |
| 最近记录: |