MySQL数据表操作(DDL)

一、创建数据表

语法:create table 表名称(字段 字段类型 约束, 字段 字段类型 约束,...) [表选项];

约束:primary key, not null, auto_increment等

表选项:数据表的属性,一般包括engine、charset、collate

engine:存储引擎,MySQL提供的具体存储数据的方式,默认是innodb(5.5版本之前的是myisam)

charset:字符集,只对当前数据表有效(级别比数据库高)

collate:校对集

 

CREATE TABLE student(
    id INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
    `name` VARCHAR(30),
    age TINYINT UNSIGNED,
    high DECIMAL(5,2),
    gender ENUM('男','女') DEFAULT '男',
    cls_id INT UNSIGNED
);

 

扩展:通过复制已有表结构创建数据表,只复制结构,表中的数据不复制

语法:create table 新表名 like 已有表名;

PS:已有表名可以是当前数据库,也可以来自其它数据库(通过 “数据库名.表名” 方式访问)

 

二、查看数据表

2.1 查看所有数据表

语法:show tables;

 

2.2 查看部分数据表

语法:show tables like "匹配模式";

 

2.3 查看数据表结构

语法:desc 表名; 或 show columns from 表名;

 

三、修改数据表

3.1 修改表名称

语法:rename table 旧表名 to 新表名;

 

3.2 修改数据表选项

语法:alter table 表名 新的表选项;

注意:如果表中已存有数据,谨慎修改表选项!

 

3.3 修改数据表结构

新增字段语法:alter table 表名 add 字段名 字段类型 [约束] [位置];

PS:如果不指定位置,默认放到最后一个字段的后面

 

修改字段语法:alter table 表名 change 旧字段名 新字段名 新字段类型 [新字段约束] [新位置];

 

注意:如果只是想单纯的修改字段名称,可以只修改字段名称,字段类型可以用原来的,但不能为空!

 

修改字段类型及属性语法:alter table 表名 modify 字段名 新字段类型 [新字段约束] [新位置];

 

 

删除字段语法:alter table 表名 drop 字段名;

 

 

四、删除数据表

语法:drop table 表名;

 

posted @ 2018-07-12 22:55  heqiuyong  阅读(350)  评论(0编辑  收藏  举报