本节介绍:
表结构操作
- 创建数据表、
- 查看数据表和查看字段、
- 修改数据表结构
- 删除数据表
字段操作
- 新增字段、
- 修改字段数据类型、位置或属性、
- 重命名字段
- 删除字段
首发时间:2018-02-18 21:31
表结构操作
创建数据表:
-
语法 :
create table [if not exists] 表名( 字段名字 数据类型, 字段名字 数据类型 )[表选项];
-
表选项 :
字符集:charset表中存储数据的字符集
校对集:colloate表中用来校对数据的校对集
存储引擎 :engine存储数据的存储引擎
-
使用示例 :
-- 建表之前必须指定数据库,使用use ,或者显式指定 create table if not exists mydatabase.student( name varchar(20), sex varchar(20), number varchar(20), age int )charset utf8; -- use mydatabase; create table if not exists class( name varchar(20), room varchar(20) )charset utf8; ------------ use mydatabase; create table if not exists class( name varchar(20), room varchar(20) );
- 补充说明 :
- if not exists 是先检查是否存在同名的表,如果存在,则不执行后面的创建语句。
- 如果没有指定表选项,将使用默认的,比如mysql默认的存储引擎是innodb
查看数据表 :
查看数据表可以查看已有数据表、数据表的字段信息
- 语法 :
-- 查看所有表 show tables; -- 查看部分表 show tables like ‘模糊匹配‘; -- 查看表的创建语句 show create table 数据表名; -- 旋转查看结构 show create table 数据表名\G; -- 查看表结构:查看表中的字段信息: Desc/desc 表名; describe 表名; show columns from 表名;
- 通配符:
_匹配单个字符
%匹配多个字符
- 使用示例 :
show tables; show tables like ‘my%‘; show create table student; show create table student\G; desc student; describe student; show columns from student;
图例:
- show create table student;跟show create table sudent\G;
Desc/describe /show columns from 表名;
修改数据表结构 :
修改表本身只能修改表名和表选项。
- 语法 :
-- 修改表名: rename table 老表名 to 新表名; --修改表选项: Alter table 表名 表选项 [=] 值;
- 使用示例 :
rename table student to my_student; rename table class to my_class; -- Alter table my_student charset gbk; Alter table my_collation_bin collate =utf8_bin;
删除数据表 :
- 语法 :
Drop table 表名1,表名2...;
- 使用示例 :
drop table demo; drop table demodata;
- 补充说明 :
- 删除不可恢复
字段操作 :
新增字段 :
新增字段是在表存在的基础上新增字段
- 语法 :
Alter table 表名 add [column] 字段名 数据类型 [列属性] [位置];
- 使用示例 :
Alter table 表名 add [column] 字段名 数据类型 [列属性] [位置]; Alter table demo add column id int first; Alter table demo add id int; Alter table demo add class int after age; Alter table demo add number int not null after age;
- 补充说明 :
- 位置常用语法:first 字段名,after 字段名 ;
- 列属性:主键,空 等;
修改字段 :
修改字段一般都是修改字段数据类型或者字段属性
- 语法 :
Alter table 表名 modify 字段名 数据类型 [属性] [位置];
- 使用示例 :
Alter table my_student modify number char(10) after id; Alter table demo modify number int null ; -- alter table student modify name varchar(20) not null; -- alter table student modify name varchar(20) not null primary key;
- 补充说明 :
重命名字段 :
- 语法 :
Alter table 表名 change 旧字段 新字段 数据类型 [属性] [位置];
- 使用示例 :
alter table demo change class room varchar(10); Alter table my_student change sex gender varchar(10);
删除字段 :
- 语法 :
Alter table 表名 drop 字段名;
- 使用示例 :
Alter table my_student drop age; alter table demo drop room;
- 补充说明 :
- 删除需谨慎,删除字段代表着将该字段下的所有数据都将删除。