MySQL库/表/数据的操作


system clear;//清屏!
show processlist //查看连接情况,看几个人正在使用当前数据库

1.数据库操作

1.1 创建、删除、查看和修改

create database 名字;   //创建数据库
show databases;       //查看数据库列表
drop database 名字;     //删除数据库
select database();  //确定自己当前在哪个数据库里

在这里插入图片描述

alter database test2 charset=gbk collate gbk_chinese_ci;//修改编码格式

在这里插入图片描述

1.2 编码格式

在这里插入图片描述

show charset;//查看数据库支持的字符集,字符集主要是控制用什么语言。比如utf8就可以使用中文。
show collation;//查看数据库支持的字符集校验规则
create database db2 charset=utf8;  //创建一个使用utf8字符集的 db2 数据库
create database db3 charset=utf8 collate utf8_general_ci; //创建一个使用utf字符集,并带校对规则的 db3 数据库。

1.3 备份和恢复

mysqldump -P3306 -u root -p 密码 -B 数据库名 > 数据库备份存储的文件路径  //备份

备份后会在指定文件路径下生成一个 数据库名.sql的文件

source /home/lv/mysql/数据库名.sql的文件     //也就是source 路径,恢复数据库

如果备份的不是整个数据库,而是其中的一张表,怎么做?
如下:

mysqldump -u root -p 数据库名 表名1 表名2 > D:/mytest.sql  //不是备份整个数据库而是备份表
mysqldump -u root -p -B 数据库名1 数据库名2 ... > 数据库存放路径  //同时备份多个数据库

提示:如果备份一个数据库时,没有带上-B参数, 在恢复数据库时,需要先创建空数据库,然后使用数据库,再使用source来还原。

2.表的操作

2.1 创建表

CREATE TABLE table_name (
field1 datatype comment '描述',
field2 datatype comment '描述',
field3 datatype comment '描述'
) character set 字符集 collate 校验规则 engine 存储引擎;

field 表示列名
datatype 表示列的类型
character set 字符集,如果没有指定字符集,则以所在数据库的字符集为准
collate 校验规则,如果没有指定校验规则,则以所在数据库的校验规则为准
在这里插入图片描述

2.2 存储引擎

不同的存储引擎,创建表的文件不一样。

①引擎是 MyISAM,数据目中有三个不同的文件,分别是
users.frm:表结构
users.MYD:表数据
users.MYI:表索引

②引擎是 InnoDB,数据目录中有两个不同的文件,分别是
users.frm:表结构
users.ibd:表数据和表索引

2.3 查看表、修改表、删除表

desc 表名;//查看表:
show create table 表名;//查看更详细信息,如果比较乱可以在后面加上\G
show create table 表名 \G

在这里插入图片描述
修改举例:

alter table 表名 rename to employee;//修改表名为employee

mysql> insert into users values(1,'a','b','1982-01-04'),(2,'b','c','1984-01-04');//表插入

mysql> alter table users add assets(哪一列) varchar(100)(这一列的属性) comment '图片路径' after birthday(在哪一列的后面);//在表添加一个字段,用于保存图片路径

alter table users(表名) modify name(改谁) varchar(60);//修改name,将其长度改成60

alter table users(表名) drop password(删除谁);//删除某一列

alter table employee change name xingming varchar(60);//将name列修改为xingming, 新字段需要完整定义

删除表:

drop table 表名;

3.数据类型

在这里插入图片描述

3.1整数类型

在这里插入图片描述

3.2字节类型(bit)

bit[(M)] : 位字段类型。M表示每个值的位数,范围从1到64。如果M被忽略,默认为1。
在这里插入图片描述

3.3浮点类型(bit)

flout和double!
在这里插入图片描述

float[(m, d)] [unsigned] : M指定显示长度,d指定小数位数,占用空间4个字节
在这里插入图片描述

3.4 decimal

decimal(m, d) [unsigned] : 定点数m指定长度,d表示小数点的位数
在这里插入图片描述

3.5 字符串类型

char(L): 固定长度字符串,L是可以存储的长度,单位为字符,最大长度值可以为255
varchar(L): 可变长度字符串,L表示字符长度,最大长度65535个字节
utf-8编码一个汉字是三个字节!

varchar长度可以指定为0到65535之间的值,但是有1 - 3 个字节用于记录数据大小,所以说有效字 节数是65532。
当我们的表的编码是utf8时,varchar(n)的参数n最大值是65532/3=21844[因为utf中,一个字符占用3个字节],如果编码是gbk,varchar(n)的参数n最大是65532/2=32766(因为gbk中,一个字符 占用2字节)。

在这里插入图片描述

3.6 日期和时间类型

在这里插入图片描述

3.7 enum和set

说明:不建议在添加枚举值,集合值的时候采用数字的方式,因为不利于阅读。
enum和set允许为空!

在这里插入图片描述

关于如何查找想要的数据

在这里插入图片描述

  • 9
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Chris·Bosh

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值