CREATE TABLE table_name ( column1 DATATYPE DEFAULT default_value, column2 DATATYPE DEFAULT default_value, ... );
在上述的代码中,需要进行说明的是:
- table_name:表名称。
- column1, column2:列名称。
- DATATYPE:列的数据类型。
- default_value:列的默认值。
下面是一个实际的例子:
CREATE TABLE `users` ( `id` int(11) NOT NULL AUTO_INCREMENT, `username` varchar(50) NOT NULL, `password` varchar(255) NOT NULL, `email` varchar(100) DEFAULT NULL, `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, `updated_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
在上述代码中,大家定义了一个名为users的表。其中,id列是int数据类型,且设置了AUTO_INCREMENT,username和password列是varchar数据类型,且被设置为NOT NULL(即非空)。email列是varchar数据类型,且被设置了默认值为NULL。created_at和updated_at两列都是timestamp数据类型,且有提供了默认值,其中created_at列的默认值为当前的时间戳,updated_at列的默认值是当前的时间戳,但是当这条记录发生更改时,updated_at的值也会被更新为当前的时间戳。
总体而言,定义默认字段可以让大家更好地规范数据表结构,提高数据库的可维护性和扩展性。