优秀的编程知识分享平台

网站首页 > 技术文章 正文

MySql实用技能,创建表语法你用过几种?

nanyue 2024-11-15 22:53:02 技术文章 2 ℃

学习MySql数据库,最常用的创建表语法如下:

[中括号内为可选参数]
    create table 表名(
    字段名1 类型[(宽度)] [约束条件],  
    字段名2 类型[(宽度)] [约束条件],
    字段名3 类型[(宽度)] [约束条件]
    )

# 注意

1、在同一张表中,字段名不能相同

2、宽度 和 约束条件为可选参数,字段名 和 字段名下记录的类型 是必须的

3、最后一个字段后不能加逗号


在创建表的时候我们需要考虑到数据的类型,简单的介绍如下:

整型:存储各种年龄,等级,id,号码等数据

浮点型:记录身高,体重,薪资等带小数的数据,字段限制特点:(5,3)前一位表示所有的位数,后一位表示小数个数

字符类型:char(定长)、varchar(变长)

时间类型:date:2019-05-01

time:11:11:11

Datetime:2019-01-02 11:11:11
Year:2019

枚举与集合类型:

枚举 enum # 多选一

集合 set # 多选多

约束条件:

NOT NULL    		标识该字段不能为空
DEFAULT    			为该字段设置默认值
PRIMARY KEY (PK)    标识该字段为该表的主键,可以唯一的标识记录
FOREIGN KEY (FK)    标识该字段为该表的外键
UNIQUE KEY (UK)    	标识该字段的值是唯一的
AUTO_INCREMENT    	标识该字段的值自动增长(整数类型,而且为主键)
UNSIGNED 无符号
ZEROFILL 使用0填充

not null+default(字段不能为空+为字段设置默认值)

unique(单列唯一、联合唯一)

primary key + auto_increment

primary key: 标识该字段为该表的主键,可以唯一的标识记录 auto_increment: 标识该字段的值自动增长(整数类型,而且为主键)


以上都是创建不存在表的常用要点,那么除此之外还有复制表及数据的语法,如下:

CREATE TABLE new_tbl [AS] SELECT * FROM orig_tbl;

此语法可以复制表及数据,但是不具备复制表的主键、索引、外键。

SHOW CREATE TABLE orig_tbl;

此语法是生成表的创建脚本,需要手动改表名。

CREATE TABLE targetTable LIKE orig_tbl;

此语法是完全复制表结构,但是不包含数据。


如果大家觉得对自己有所帮助,帮忙转发、点赞、加关注,谢谢。


Tags:

最近发表
标签列表