mysql知识

col_name type [NOT NULL | NULL] [DEFAULT default_value] [AUTO_INCREMENT]        [ UNIQUE [ KEY ]   | [  PRIMARY ]   KEY ]  

创建表时,要设置表中每列的属性,常规属性有一下值:

AUTO_INCREMENT:设置自增属性,只有整型列才能设置此属性。 AUTO_INCREMENT顺序从1开始,每个表只能有一个AUTO_INCREMENT列,并且必须被索引。

NOT NULL | NULL :指定改列是否允许为空。如果不指定,则默认为NULL。

DEFAULT value:为列指定默认值,如果没有为列指定默认值,mysql自动地分配一个。如果列可以取NULL值,默认值就是NULL,如果列被声明为NOT NULL,默认值取决于列类型:

(1)对于没有声明AUTO_INCREMENT属性的数字类型,默认值是0,对一个AUTO_INCREMENT列,默认值是在顺序中的下一个值。

(2)对于除TIMESTAMP列以外的日期和时间类型,默认值是改类型适当的“零”值。对于表中的第一个TIMESTAMP列,默认值是当前的日期和时间。

(3)对于除ENUM的字符串类型,默认值是空字符串。对于ENUM,默认值是第一个枚举值。


UNIQUE KEY | PRIMARY KEY :PRIMARY KEY 和UNIQUE KEY都表示字符端中的值是唯一的。PRIMARY KEY 表示设置为主键,一个表只能有一个主键,主键一定要为NOT NULL。


复制现成的表

CREATE [ TEMPORARY ] TABLE [ IF NOT EXISTS ] tbl_name [ LIKE old_tbl_name ] | [ AS (select_statement) ]

说明:

(1)使用like关键字创建一个与old_table_name表相同结构的新表,列名、数据类型、空指定和索引也将复制,但是表的内容不会复制,因此创建的新表是一个空表。

(2)使用AS关键字可以复制表的内容,但是索引和完整性约束是不会复制的。select_statement是一个表达式,例如可以使一条SELECT语句。

create table user_copy1 like user  (复制user的表数据结构到user_copy1)


create table user_copy2   as (select * from user)     复制表user_copy2,其中结构和内容都取自user表。





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值