下面的内容将包括 1.创建数据表(普通创建与复制已有表结构创建)2.多维度显示数据表(显示所有表,匹配显示表与显示表结构)3.多维度修改表(设置表属性,修改表结构删除表结构)
一.创建数据表
1.1普通创建 格式
表是依赖于库的,创建表有两种方式
(1)在数据表名字前面加上数据库名字,用“.”连接即可:数据库.数据表
(2)在创建数据表之前先进入到某个具体的数据库即可:use 数据库名字;
1.2复制其它表结构进行创建
从已经存在的表复制一份(只复制结构:如果表中有数据不复制)
基本语法:create table 新表名 like 表名; //只要使用数据库.表名,就可以在任何数据库下访问其他数据库的表名
二.显示数据表
每当一张数据表创建,那么就会在对应的数据库下创建一些文件(与存储引擎有关,了解即可)
注意:这个结构文件来自于innodb存储引擎,innodb存储引擎所有的文件都存储在外部的ibdata文件中
2.1显示所有表
语法:show tables;
2.2匹配显示表(%代表匹配任意字符,_匹配单个)
2.3显示表结构
本质含义:显示表中所包含的字段信息(名字,类型,属性等)
有如下三种方式,一般用第二种(最简单)
1、Describe 表名
2、Desc 表名
3、show columns from 表名
field:字段名字 type:字段类型 Null:是否允许为null
Key:索引 default:默认值 Extra:额外的属性
2.4显示表创建语句
基本语法:show create table 表名;
Mysql中有多种语句结束符
;与\g 所表示的效果是一样的,都是字段在上排横着,下面跟对应的数据
\G 字段在左侧竖着,数据在右侧横着(当字段比较多时这样查看较方便,不过有些客户端软件好像不支持)
三.修改数据表
3.1修改表属性
表属性指的就是表选项:engine,charset和collate
基本语法:alter table 表名 表选项 [=] 值;
如下,创建表时没指定字符,默认字符集为gbk,现在改为了utf8
3.2修改表结构
修改表名:rename table 旧表名 to 新表名
新增字段:alter table 表名 add [column] 新字段名 列类型 [列属性] [位置first/after 字段名]
字段位置:字段想要存放的位置
First:在某某之前(最前面),第一个字段
After 字段名:放在某个具体的字段之后(默认的)
修改字段名:alter table 表名 change 旧字段名 新字段名 字段类型 [列属性] [新位置]
我这里只改了数据类型
这里只改了字段名
修改字段类型(属性):alter table 表名 modify 字段名 新类型 [新属性] [新位置]
小结:modify语句只可以改变字段的数据类型,而change语句字段名与字段类型可以改变
3.3删除表结构
删除字段:alter table 表名 drop 字段名
删除表结构
基础语法:drop table 表名[,表名2…],可以同时删除多个数据表
批量删除表(用逗号连接即可)
如 drop table table14,table15; --我的表还有用...