数据表操作
创建数据库
普通创建表
基本语法:create table 表名(字段名 字段类型 【字段属性】, 字段名 字段类型 【字段属性】,…表选项)
有两种方式可以将表挂入到指定的数据库下
- 数控表名字前面加上数据库名字,用“.”连接即可:数据库.数据表
- 在创建数据表之前先进入到某个具体的数据库即可:use数据库名字
表选项:与数据库选项类似
engine:存储引擎,mysql提供的具体存储的方式,默认有一个innodb(5.5以前默认myisam)
charset:字符集,只对当前自己表有效(级别比数据库高)
collate:校队集
复制已有表机构
从已经存在 表赋值一份(只复制结构:如果表中有数sue据不复制)
基本语法:create table 新表名 like 表名 //只要使用数据库.表名,就可以在任意数据库下访问其他数据库表名
复制旧表的数据到新表(假设两个表结构不一样)
INSERT INTO 新表(字段1,字段2,…….) SELECT 字段1,字段2,…… FROM 旧表
显示数据表
每当一张数据创建,那么就会在对应的数据库下创建一些文件(与存储引擎有关)
注意:这个结构文件来自于innodb存储引擎,innodb存储引擎所有的存储在外部的ibdata文件中
显示所有表
基本语法 : show tables
匹配显示表
基本语法: show tables like ‘匹配模式‘;
显示表结构
本质含义:显示表中所包含的字段信息(名字,类型,属性等)
describe表名
desc表名
show columns from 表名
显示表创建语句
查看数据表创建时的语句:此语句看到的结果已经不是用户之前自己输入的。
基本语法:show create table 表名
语句结束符
;与\g所表示的效果是一样的,都是字段在上排横着,下面跟对应的数据
\G 字段在左侧竖着,数据在右侧横着
设置表属性
表属性值得就是表的选项:engine charset和collage
基本语法 alter table 表名 表选项【=】值
注意:如果数据库已经确定了,里面有很多数据了,不要轻易修改表选项(字符集影响不大)
修改表结构
数据库中数据表名字通常由前缀:取数据库的前两个字母加上 下划线
修改表名
rename table 旧表名 to 新表名
修改表选项
alter table 表名 表选项【=】值
(与设置表属性相同)
新增字段
alter table 表名 add 【column】 新字段名 列类型【列属性】【位置first/after字段名】
字段位置:字段想要存放的位置
first:在某某之前(最前面),第一个字段
after 字段名:放在某个具体的字段之后
修改字段名
alter table 表名 change 旧字段名 新字段名 字段类型【列属性】【新位置】
修改字段类型(以及属性)
alter table 表名 modify 字段名 新类型 【新属性】【新位置】
删除字段
alter table 表名 drop 字段名
删除表结构
基础语法:drop table 表名【,表名2…】
可以同时删除多个表(对数据库不能这么操作)