MySQL数据库管理

一 查看数据库结构

1.1 查看已存在数据库信息

在这里插入图片描述

mysql默认4个数据库
information_schema:定义访问数据库元数据的方式。数据库名和表名,列的数据类型、访问权限等。
mysql:核心数据库,负责存储数据库用户、权限、关键字等用户自己需要使用的控制和管理信息。
performance_schema:数据库的性能参数,存储引擎等。
sys:sys系统库下包含许多视图,它们以各种方式对preformance_schema表进行聚合计算展示。

1.2 查看数据库表信息

在这里插入图片描述

1.3 显示数据表的结构(字段)

在这里插入图片描述

二 SQL语言概述

2.1 SQL语言简介

1、Structured Query Language的缩写,即结构化查询语言
2、关系型数据库的标准语言
3、用于维护管理数据库
包括数据查询、数据更新、访问控制、对象管理等功能

2.2 SQL分类

1、DDL:(Data Definition Language,数据定义语言):用来建立数据库、数据库对象和定义字段,如CERATE、ALTER、DROP。
2、DML:(Data Manipulation Language,数据操纵语言):用来插入、删除和修改数据库中的数据,如INSERT、UPDATE、DELETE。
3、DQL:(Data Query Language,数据查询语言):用来查询数据库中的数据,如SELECT。
4、DCL:(Data Control Language,数据控制语言):用来控制数据库组件的存取许可、存取权限等,如COMMIT、ROLLBACK、GRANT、REVOKE。

2.3创建数据库和表

1、DDL语句可用于创建数据库对象,如库、表、索引等
2、使用DDL语句新建库、表示例
在这里插入图片描述
在这里插入图片描述
格式:
create table 表名(字段01名称 字段01类型 字段01约束,字段02名称 字段02类型 字段02约束,…)存储引擎,字符集

字段名称、类型、约束解释:
字段01名称:属性名称,自定义
字段01类型:int(4) 整型 代表0000-9999
double 浮点型
decimal(5,2)有效数字是5位,小数点后面保留2位 100.00;099.50
float 单精度浮点 4字节
char 字符
char (10)固定长度字符串,字符串要用单引号引起来
varchar(50)可变长度字符串
字段01约束:
非空约束:内容不允许为空 not null
主键约束:非空且唯一 标识 primary key(主键)
默认约束:假如没有填数据,默认预先设定的值填写 default ‘未知’
自增特性:id 1 2 3 4 auto_increment(自动增长)
存储引擎:myisam innodb
字符集:UTF-8

2.4、删除数据库和表

  1. 删除表
    在这里插入图片描述
  2. 删除数据库
    在这里插入图片描述

三 管理数据表中的数据

DML语句用于对表中的数据进行管理
包括的操作
insert:插入新数据
update:更新原有数据
delete:删除不需要的数据
注意:对数据的操作用DELETE,对库和表用drop

3.1 向数据表中插入新的数据内容

完整格式:insert into info (字段1,字段2) values (字段1的值,字段2的值)

  1. 加字段
    在这里插入图片描述
  2. 不加字段,默认是所有字段,每个字段都要写
    在这里插入图片描述
  3. 查看添加的信息
    在这里插入图片描述

3.2、修改、更新数据表中的数据记录

格式:update 表名 set 字段名1=值1,字段名2=值2 where 条件表达式
在这里插入图片描述
修改用户密码
在这里插入图片描述

3.3 在数据库中删除指定的数据记录

格式:delete from 表名 where 条件表达式(不带where代表删除表中所有记录)
在这里插入图片描述

3.4 数据库高级操作

  1. 清空表
    delete from info;
    truncate table info;
    truncate清空表,表还在;drop是删除表中所有记录。
    truncate和delete是两者的新值初始id不同。
  2. 临时表
    临时建立的表,用于保存一些临时数据,不会长期存在
    在这里插入图片描述
mysql> create temporary table temp_info(id int(4) not null auto_increment, name varchar(32) character set utf8 collate utf8_bin not null, level int(10) not null, primary key(id))engine=innodb default charset=utf8;

innodb 支持事务;写在括号外面的是对整张表的设定。
show tables;看不到临时表
在这里插入图片描述
3. 克隆表
like方法:从info表完整复制结构生成test表
在这里插入图片描述
导入数据
在这里插入图片描述
新建一个tmp表,读取test表中的所有内容放入tmp表
在这里插入图片描述

3.5 数据库用户授权

  1. DCL语句设置用户权限(用户不存在时,则新建用户)
    #设置登录密码为abc123的lisi用户,可以从任意终端登录,对所有库和所有表有全部权限
    在这里插入图片描述
    在这里插入图片描述
    #设置登录密码为abc123的tom用户,可以从本地终端登录,对mysql库中的user表有select权限
    在这里插入图片描述
  2. 查看用户的权限
    查看当前用户的权限
    在这里插入图片描述
    查看从本地登录的tom用户的权限
    在这里插入图片描述
    查看当前系统中的用户
    在这里插入图片描述
  3. 撤销用户的权限
    在这里插入图片描述
    在这里插入图片描述
    grant:当用户已存在时,直接提权。
    当用户不存在时,先创建用户,再提权。
    revoke:只撤销权限,不删除用户
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值