mysql03-数据表操作

数据表操作

创建数据库

普通创建表

基本语法:create table 表名(字段名 字段类型 【字段属性】, 字段名 字段类型 【字段属性】,…表选项)

以上错误说明:表必须放到对应的数据库下



有两种方式可以将表挂入到指定的数据库下

  1. 数控表名字前面加上数据库名字,用“.”连接即可:数据库.数据表


  2. 在创建数据表之前先进入到某个具体的数据库即可: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…】

可以同时删除多个表(对数据库不能这么操作)