【MySQL从青铜到王者】第二篇:数据库的用户管理操作和数据库表的操作与数据类型

在这里插入图片描述

系列文章目录



前言


一、数据库操作之备份、还原

在这里插入图片描述

备份:
mysqldump -P3306 -u root -p 密码 -B 数据库名 > 数据库备份存储的文件路径
eg:(退出连接)mysqldump -P3306 -u root -B mytest > ./mytest.sql
在这里插入图片描述
在这里插入图片描述
恢复:
source 路径;
eg:source mytest.sql;
在这里插入图片描述

二、用户管理

在这里插入图片描述

1.用户信息

MySQL中的用户,都存储在系统数据库mysql的user表中。
在这里插入图片描述

  • 字段解释:
  • host:表示这个用户可以从哪个主机登陆,如果是localhost,表示只能从本机登陆。
  • user:用户名。
  • authentication_string:用户密码通过password函数加密后的。
  • *_priv:用户拥有的权限。

2.创建用户

create user ‘用户名’@‘登陆主机/ip’ identified by ‘密码’;
在这里插入图片描述

3.删除用户(慎用)

drop user ‘用户名’@‘主机名’
在这里插入图片描述

4.修改用户密码

自己改自己密码:
set password=password(‘新的密码’);
在这里插入图片描述

root用户修改指定用户的密码:
set password for ‘用户名’@‘主机名’=password(‘新的密码’);
set password for ‘litao’@‘localhost’=password(‘abcdefg’);

5.给用户授权

刚创建的用户没有任何权限。需要给用户授权。

grant 权限列表 on 库.对象名 to ‘用户名’@‘登陆位置’ [identified by ‘密码’]
在这里插入图片描述

  • 说明:
  • 权限列表,多个权限用逗号分开。
  • . : 代表本系统中的所有数据库的所有对象(表,视图,存储过程等)。
  • 库.* : 表示某个数据库中的所有数据对象(表,视图,存储过程等)。
  • identified by可选。 如果用户存在,赋予权限的同时修改密码,如果该用户不存在,就是创建用户。

6.回收权限

revoke 权限列表 on 库.对象名 from ‘用户名’@‘登陆位置’;
在这里插入图片描述

三、navicat连接数据库

在这里插入图片描述
在这里插入图片描述

四、数据库表结构操作增、删、查、改

在这里插入图片描述
在这里插入图片描述
在项目实际开发中,经常修改某个表的结构,比如字段名字,字段大小,字段类型,表的字符集类型,表的存储引擎等等。我们还有需求,添加字段,删除字段等等。这时我们就需要修改表。

1.增加表字段

ALTER TABLE tablename ADD (column datatype [DEFAULT expr][,column datatype]…);
在这里插入图片描述
alter table user1 add age int before id;

2.删除表字段

注意:删除字段一定要小心,删除字段及其对应的列数据都没了。

alter table user1 drop info;
在这里插入图片描述

3.修改表名字

alter table user1 rename to user2;
在这里插入图片描述

4.修改表字段属性(type)

alter table user1 modify age char(10);
在这里插入图片描述

5.修改表中的字段名称(Field)

alter table user1 change age info char(20);

在这里插入图片描述

6.删除表(慎用)

drop table t1;

五、数据类型

1.数据类型分类

在这里插入图片描述

2.数值类型

在这里插入图片描述

1.tinyint类型

在这里插入图片描述

2.bit类型

在这里插入图片描述

bit[(M)] : 位字段类型。M表示每个值的位数,范围从1到64。如果M被忽略,默认为1。

3.bool类型

在这里插入图片描述

4.smallint类型

在这里插入图片描述

5.int类型

在这里插入图片描述

6.bigint类型

在这里插入图片描述

3.小数类型
1.float类型

在这里插入图片描述

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

2.decimal类型

在这里插入图片描述

3.double类型

在这里插入图片描述

4.字符串类型
1.char类型

在这里插入图片描述

char(L): 固定长度字符串,L是可以存储的长度,单位为字符,最大长度值可以为255
char(2) 表示可以存放两个字符,可以是字母或汉字,但是不能超过2个, 最多只能是255

2.vchar类型

在这里插入图片描述

varchar(L): 可变长度字符串,L表示字符长度,最大长度65535个字节。

  • 关于varchar(len),len到底是多大,这个len值,和表的编码密切相关:
  • 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.char与vchar的比较

在这里插入图片描述

5.日期时间类型
  • 常用的日期有如下三个:
  • datetime 时间日期格式 ‘yyyy-mm-dd HH:ii:ss’ 表示范围从1000到9999,占用八字节。
  • date:日期 ‘yyyy-mm-dd’,占用三字节。
  • timestamp:时间戳,从1970年1月1日0时0分0秒开始的 yyyy-mm-dd HH:ii:ss格式和datetime完全一致,占用四字节。
6.enum类型
  • 常用的日期有如下三个:
  • enum:枚举,“单选”类型;。
  • enum(‘选项1’,‘选项2’,‘选项3’,…);。

该设定只是提供了若干个选项的值,最终一个单元格中,实际只存储了其中一个值;而且出于效率考虑,这些值实际存储的是“数字”,因为这些选项的每个选项值依次对应如下数字:1,2,3,…最多65535个;当我们添加枚举值时,也可以添加对应的数字编号。
在这里插入图片描述
在这里插入图片描述

7.set类型

在这里插入图片描述

  • 语法:
  • set:集合,“多选”类型;;。
  • enum(‘选项1’,‘选项2’,‘选项3’,…);。

该设定只是提供了若干个选项的值,最终一个单元格中,设计可存储了其中任意多个值;而且出于效率考虑,这些值实际存储的是“数字”,因为这些选项的每个选项值依次对应如下数字:1,2,4,8,16,32,… 最多64个。

在这里插入图片描述
在这里插入图片描述


总结

以上就是今天要讲的内容,本文详细介绍了数据库表的增、删、查、改的使用和后续数据库表、数据类型,数据库提供了大量的方法供我们使用,非常的便捷,我们务必掌握。希望大家多多支持!另外如果上述有任何问题,请懂哥指教,不过没关系,主要是自己能坚持,更希望有一起学习的同学可以帮我指正,但是如果可以请温柔一点跟我讲,爱与和平是永远的主题,爱各位了。加油啊!
在这里插入图片描述

  • 5
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

森明帮大于黑虎帮

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

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

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

打赏作者

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

抵扣说明:

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

余额充值