MySQL之表操作

 随笔记录方便自己和同路人查阅。

#------------------------------------------------我是可耻的分割线-------------------------------------------

 最近在复习MySQL,为什么是复习呢?大家应该都懂,技能好久不用都还给老师了,因为以前学习没有记录的习惯,学的时候会不用就忘,

而且用的时候不能快速理解,还要再次观看视频或者翻看厚厚的书籍,所以本次复习随笔记录,方便以后查看。

#------------------------------------------------我是可耻的分割线-------------------------------------------

表操作

表与字段密不可分的;

新增数据表

Create table [if not exists]表明(

字段名字 数据类型,

字段名字 数据类型    -- 最后一行不需要逗号

)[表选项];

 

If not exists:如果表名不存在,那么就创建,否则不执行该代码

表选项:控制表的表现

字符集:charset/character set 具体字符集;

校对集:collate 具体校对集

存储引擎:engine具体存储引擎(innodbmyisam

 

 

任何一个表的设计都必须指定数据库,

方案1:显示的指定表所属的数据库

Create table 数据库.表名()-- 将当前数据表创建到指定的数据库下

 

 

方案2:隐式的指定表所属数据库:先进入到某个数据库内,在该环境下创建表,默认数据该数据;

进入数据库环境:use 数据库名

 

 

当创建数据表的SQL指令执行之后,到底发生了什么?

  1. 指定数据库下已经存在对应的表
  2. 在数据对应的文件夹下,会产生对应表的结构文件(跟存储引擎有关系)  

  

 

查看数据表

数据库能查看的方式表都可以查看。

1.查看所有表:show tables;

 

 

2.查看部分表:模糊匹配:show tables like'student';

 

 

3.查看表创建语句:

show create table student\g --\g==;

show create table student\G --将查到的结构旋转90

4.查看表结构:查看表中的字段信息

Dese/describe/show columns from 表名;

 

 

修改数据表

表本身存在,还包含字段:表的修改分为两个部分:修改表本身和修改字段

修改表本身

表本身可以修改:表名和表选项

修改表名:rename table表名 to新表名;

 

 

修改表选项:字符集,校对集和存储引擎

Alter table 表名 表选项 = 值;

 

 

修改字段

字段操作很多:新增,修改,重名,删除

新增字段

Alter table 表名add [column]字段名 数据类型[列属性][位置]

位置:字段名可以存放表中的任意位置

First:第一个位置

After:在那个字段之后:after字段名;默认的是在最后一个字段之后

新增字段

 

 

修改字段:修改通常是修改属性或数据类型

Alter table 表名 modify 字段名 数据类型[属性][位置]

 

 

重命名字段

Alter table 表名 change 旧字段 新字段名 数据类型[属性][位置]

 

 

删除字段

Alter table 表名 drop 字段;

 

 

小心:如果表中已经存在数据,那么删除字段会清空该字段的所有数据(删除不可逆);

删除数据表

Drop table 表名1,表名2....-- 可以一次性删除多张表

 

 

当删除数据表指令执行之后发生了什么?

  1. 在表空间中,没有了指定的表(数据没有了)
  2. 在数据库对应的文件夹下,表对应的文件(与存储引擎有关)也会被删除

  

 

注意:删除有危险,操作需谨慎(不可逆);

posted @ 2019-06-26 11:31  李荣洋  阅读(191)  评论(0编辑  收藏  举报