0


《MySQL》MySQL简单操作

最近开始了新的学习进度 进入MySQL数据库的学习



一、MySQL启动方法

1.使用MySQL启动

从windows开始启动


2.使用cmd启动

win+r输入cmd打开我们的cmd窗口

** 之后我们输入mysql -u root -p密码 即可登录成功ps(如果想要在cmd使用MySQL需要简单配置一下环境)**


二、数据库的简单操作命令


显示当前服务器上有哪些数据库

show databases;


创建新的数据库

create database 数据库名称;

** 我们可以看到 创建成功了 我们再次输入显示数据库查看一下是否真正创建成功**


删除数据库

**drop database 数据库名称; **


选中数据库

**use 数据库名称;//此处可以没有分号~但是仍然建议加上 **


三、数据表的操作

数据类型

一个数据库中,可以有很多个数据表,每个数据有很多行,每一行成为是一条记录,每一行又有很多列,没一列称为是一个字段 MySQL这样的数据库,就要求每一行这里的列都是一致的

类型字节tinyint1smallint2int4bigint8float(N,M)4double(N,M)8decimal 更加精确的浮点数varchar(N) 可变长字符串text自适应文本mediumtext中等长度的文本数据blob 用于表示二进制的数据datetime8timestamp4


四、表的简单操作

查看数据库中的所有表

show tables;


创建表

create table 表名(名称 类型……);


查看表结构

desc 表名;


删除表

drop table 表名;


五、增删查改

这一块是数据库的核心内容 增删查改

简称为CUPD

C:创建

U:修改

R:查询

D:删除

往表中增加数据

**insert into 表名 values (对应列的值)--类型一定要一致 不然会增加失败 **

insert也是支持多行插入的 格式是这样的 只需要往后跟逗号加内容即可

insert into 表名 values(对应列的值),(对应列的值);

那么我们如果要查看是否成功的添加了呢?我们就要进入到查


查找语句是SQL中最核心并且也是最复杂的操作

首先我们要明确一点 * 在SQL中叫做通配符 在这里我们表示一个表的所有列

1.全列查找

select * from 表名;


2.指定列查询

select 要查找的列名,列名 …… from 表名;

我们以这个表为例

假设我们只看名称以及数学成绩


3.指定查询字段为表达式

select 列名,列名+10 from 表名;

值得一提的是 如此操作生成出的表只是临时表 不会影响到在硬盘中存储的数据库中的数据,并且临时表的类型会自动适应 保证计算结果是正确的

我们以这个表的数据为例

经过操作后得到以下结果


4.查询字段指定别名

select name ,列名+列名 as 新名称 from 表名;

仍旧是这个表 我们来计算一下语文成绩+数学成绩+英语成绩的总分

我们经过查询得到以下结果

那么如果将表中的chinese+math+engilsh修改为num呢


5.针对查询结果去重

select distinct 列名 from 表名;

我们在表中添加一个重复的数据

在执行以下操作后 发现并没有成功去重

这是因为如果针对多个列去重 那么只有这行元素都相同才会去重,所以我们浅做修改


6.针对查询结果进行排序

**select 列名 from 表名 order by 列名 asc/desc --asc代表升序 desc代表降序 如果什么都不加的话默认为升序 **

并且有的数据库记录中有NULL这样的话 那么认为NULL为最小的

来一点挑战了 我们将之前的表按照总分按照降序排序一下


7.条件查询

select 列名 from 表名 where 条件;

我们来查看一下 总分高于210分的人的姓名以及成绩

那么我们会遇到一个新的问题 遇到NULL怎么计算?

NULL与任何值进行计算 结果还是NULL

条件查询中的符号

运算符

between a0 and a1 构成的一个闭区间

=代表相等

<=>也是比较相等 只是使用<=>比较NULL结果为真

in(……)如果是括号中的任意一个 返回真

is null 是NULL

is not null 不是NULL

like 模糊匹配

逻辑运算符

and 代表Java中的&&

or 代表Java中的 ||

not 代表Java中的!

根据以上的方法 我们来做一些简单的练习题

查询英语不及格的同学 (<70)

查询语文成绩大于数学成绩的同学

查询语文成绩大于80或英语成绩大于80分的童鞋


8.模糊查询

select 列名 from 表名 where 列名 like() ;

查找姓孙的姓名

好 那么疑问就来了 其中的%是什么意思呢?

%(代表0个或者多个任意字符)

_(代表任意一个字符)


9.分页查询

select 列名 from 表名 limit a offset b --其中a代表显示几行 b代表从第几个开始

对于以上的操作 就代表一页显示三个 从第0个开始显示 如果还不明白 我们再来一个

limit还可以搭配条件以及order by来实现组合操作

我们来看一下总成绩最高的三名同学

那如果我们要看一看第四名到第六名的呢 也是很简单的


修改

update 表名 set 列名=值…… where 条件;

如果where 省略了 那就是修改所有的数据 order by和limit也是可以使用的

我们尝试将孙悟空的属性成绩变更为80

将姓孙的同学语文整体扣10分

来一个上难度的 我们将总成绩倒数前三的三位同学语文+10分


**delete from 表名 ;--后面可以增加where条件 **

删除天鹏同学的所有信息


注意!!!!!

**之前的增、删、改都是会直接修改硬盘中数据库的数据的 所以在做这些操作之前 一定要谨慎并且多次检查核对代码 如果操作错误 会造成大量的损失 一定切记切记 **

标签: mysql 数据库 java

本文转载自: https://blog.csdn.net/m0_69996872/article/details/128525385
版权归原作者 Java冰激凌 所有, 如有侵权,请联系我们删除。

“《MySQL》MySQL简单操作”的评论:

还没有评论