mysql数据库的增、删、改、查

本文涉及的产品
云数据库 RDS MySQL,集群版 2核4GB 100GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,高可用版 2核4GB 50GB
简介: mysql数据库的增、删、改、查

一、登录mysql数据库


数据库的基本结构


  • 结构: 库——表——数据

mysql数据库的默认管理员是root


登录格式:


  • 没有密码时:mysql -u root

202012030920569.png


第一次设置密码:mysqladmin -u root -p password ‘密码值’ (输入后,下一步直接回车即可)

20201203092147477.png


有密码后登录为:mysql -u root -p (按照提示输入密码)或 mysql -u root -p密码值(直接登录)

20201203092229845.png

20201203092303947.png

非第一次修改密码:mysql -u root -p password(按照提示先输入旧密码,然后根据提示输入两次新密码)


20201203092641506.png


2020120309271998.png

二、退出与查看数据库及相关规则


所有的mysql的操作语句基本上都需要以 ’ ; '结束,但是也有少许不需要,但是最好还是养成习惯,(;与 , 要使用英文的)输入时不区分大小写,一般来说执行完命令后,会提示 “OK”的


  • 查看数据库服务的基本信息:
    msyql>status;


20201203094530503.png

退出数据库:exit; 或 quit;



20201203094619986.png

20201203094639326.png


三、数据库中查看与创建库和表


命令格式:


***查看数据库中有那些库
mysql>show databases; 
***切换到指定的库中
mysql>use 库名;  
***查看当前库中有哪些表
mysql>show tables;  
***查看mysql库中指定表的数据结构
mysql>describe 库名.表名;  
***创建表
mysql>create table 库名.表名 (字段1名称 类型,字段2名称 类型,... primary key (主键名)); 
***删除指定表
mysql>drop table 库名.表名;
***删除指定库
mysql>drop database 库名; 

示例:


  • 查看当前数据库中存在那些库
    mysql>show databases;


20201203093701282.png

切换到指定库中

mysql>use mysql;

20201203093750270.png

查看当前库有哪些表

mysql>show tables;


20201203093837212.png


查看表的结构


mysql>describe user; (得先切换到指定库之后才能直接查看)

mysql>describe mysql.user; (这个不需要切换到指定库,前面跟上表所在的库就可以)


20201203094109222.png


20201203094207806.png

创建新的库

mysql>create database aaa; (创建一个库叫aaa)


2020120309435823.png


创建一个新的表


mysql>create table aaa.abc (xm char(16) not null,nl char(12) default ’ ',sx char(10),yy char(10),primary key (xm));


这里括号里的 char(16) 表示最多可以输入16个字符

not null 表示不允许为空

default ’ ’ 表示默认为空,但是如果插入数据的话指定了是多少,那么就是多少,只有在插入数据的时候不写,才会默认变成空(如果'20'那么就是默认为20,这里的什么也没有,所以是空)

primary key (xm) 这里表示主键是xm,主键有唯一性并且不能为空,也就是说,xm的数据不能有重复的


(写的过程中我的'老是变成’这个,所有的命令只要有'都是',不是‘这个,并且所有的标点符号都是英文的)

20201203095153414.png


创建完可以使用describe查看表的结构,会显示表的基本信息


2020120310014726.png


删除指定表

mysql>drop table aaa.abc;

20201203100237924.png

删除库

mysql>drop database aaa;


20201203100319990.png


删除后会使用show databases; 查看会发现创建的库没有了


20201203100408223.png


四、管理表中的数据


命令格式:

往表中插入数据
mysql>insert into 库名.表名 (字段1名称,字段2名称,...) values('字段1的值','字段2的值',...);
简化版:insert into 库名.表名 values('字段1的值','字段2的值',...);  
(这个是把字段隐藏了,写字段值的时候按表的数据结构的顺序写就行)(每个字段值都要加'')
如:insert aaa.bbb (姓名,数学,计算机) values('李蔚','88','77');
即往aaa这个库中的bbb表中的字段 姓名,数学,计算机 里插入数据 李蔚 88 77
查询数据记录
mysql>select 字段1名称,字段2名称,... from 库名.表名 where 条件; (select * 表示查询全部,也可以根据条件查询)
如:select 姓名,数学,计算机 from aaa.bbb where 数学= '88';
即查询aaa这个库中bbb中数学成绩等于88 的数据,并且只显示字段 姓名,数学,计算机
    select  * from aaa.bbb; 
即查询aaa库中的bbb表中的所有数据记录
修改表中的数据
mysql>update 库名.表名 set 字段1名称=新值,字段2名称=新值... where 条件;
如: update  aaa.bbb set 计算机='80',数学='82' where 姓名='刘波';
即把aaa库中的bbb表中的 姓名是刘波  的数据记录的 计算机字段值改成 80 ,数学字段值改成 82
删除表中指定的数据
mysql>delete from 库名.表名 where 条件;
如: delete from aaa.bbb where 姓名='魏帅'; 
即删除aaa库中的bbb表中的姓名字段值是魏帅的所有数据


示例:


  • 往表中插入数据


20201203105137485.png

查询数据记录

20201203105250703.png


20201203105359186.png

修改表中的数据

20201203105641165.png

再次查看,发现已经修改成功


20201203105730552.png

删除表中指定数据


20201203105833949.png

再次查看,发现已经删除成功

20201203105903352.png

五、数据库用户授权


  • 原因:Mysql数据库中的root账户拥有所有的库、表的所有权限(权限太高会产生安全风险)
  • 解决方案:创建一些低权限用户,让该账户只负责一部分的库,表的管理和维护


命令格式:

授予权限
mysql>grant 权限列表 on 库名.表名 to 用户名@指定的ip地址 identified by '密码值';
权限列表:select (查询)、  insert (插入)、update (修改)、delete (删除)、all(所有)等
库名.表名 针对指定的库和表,* 代表所有
用户名@指定的ip地址  用于指定用户名称和允许访问的客户端地址 (localhost就是本机)
identified  by '密码值'  设置用户连接mysql数据库时所用的密码
如:grant select on aaa.* to 'aaa'@'localhost' identified   by  '123456';
即授权一个用户名是aaa,允许从本机登录,对aaa库中的所有表有查询的权限,密码是123456
查看权限
mysql>show grants for 用户名@指定的ip地址;
如:show grants for boss@localhost;
即查看boss在本机的权限
取消权限
mysql>revoke 权限列表 on 库名.表名 from 用户名@指定的ip地址;
如:revoke all on aaa.* from boss@loaclhost;
即取消boss对aaa库中表的所有权限

示例:


  • 授予权限


20201203111810721.png

查看权限


20201203111946857.png


取消权限


20201203112153412.png

再次查看

2020120311222013.png

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
2月前
|
SQL 存储 关系型数据库
轻松入门MySQL:玩转数据表的增、删、改、查(4)
轻松入门MySQL:玩转数据表的增、删、改、查(4)
|
13天前
|
XML Java 数据库连接
如何使用 MyBatis 来进行增、删、改、查操作
如何使用 MyBatis 来进行增、删、改、查操作
20 2
|
10天前
|
SQL 关系型数据库 MySQL
Mysql的增、删、查、改
Mysql的增、删、查、改
10 0
|
2月前
|
SQL 存储 数据库连接
C#SQL Server数据库基本操作(增、删、改、查)
C#SQL Server数据库基本操作(增、删、改、查)
23 0
|
2月前
|
SQL 关系型数据库 MySQL
MySql的增、删、改、查(MySql数据库学习——五)
MySql的增、删、改、查(MySql数据库学习——五)
27 1
|
10月前
|
关系型数据库 MySQL 数据库
MySQL数据表:对数据的基础操作(增、删、查、改)以及运算符的讲解
MySQL数据表:对数据的基础操作(增、删、查、改)以及运算符的讲解
76 1
|
SQL 存储 缓存
JDBC完成对数据库数据操作(增,删,改,查)
JDBC完成对数据库数据操作(增,删,改,查)
|
SQL Oracle Java
JDBC 完成增、删、改、查 | 学习笔记
快速学习JDBC 完成增、删、改、查。
113 0
JDBC 完成增、删、改、查 | 学习笔记
|
存储 SQL 关系型数据库
一文帮你玩转MySQL表---增,删,查,改(进阶)
创建学生表,一个学生对应一个班级,一个班级对应多个学生,id为主键,classes_id为外键,关联班级表id。
一文帮你玩转MySQL表---增,删,查,改(进阶)
|
关系型数据库 MySQL
【Elasticsearch】增、删、改、查操作深入详解
【Elasticsearch】增、删、改、查操作深入详解
115 0
【Elasticsearch】增、删、改、查操作深入详解