《MySQL》MySQL简单操作

news2024/12/29 11:06:55

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


目录

 一、MySQL启动方法

1.使用MySQL启动

2.使用cmd启动 

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

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

 创建新的数据库

删除数据库

选中数据库

三、数据表的操作 

数据类型

四、表的简单操作

查看数据库中的所有表

创建表

 查看表结构

 删除表

五、增删查改

往表中增加数据

查 

 1.全列查找

2.指定列查询

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

4.查询字段指定别名

5.针对查询结果去重

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

 7.条件查询

条件查询中的符号 

运算符

逻辑运算符

8.模糊查询

 9.分页查询

修改

注意!!!!!


一、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这样的数据库,就要求每一行这里的列都是一致的

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

四、表的简单操作

查看数据库中的所有表

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条件 

删除天鹏同学的所有信息


注意!!!!!

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/180005.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Java多线程-线程的生命周期

Java多线程-线程的生命周期 线程的状态 New 表示线程已创建&#xff0c;没启动的状态此时已经做了一些准备工作&#xff0c;还没有执行run方法中代码 Runnable 调用start方法之后的状态&#xff0c;表示可运行状态(不一定正在运行&#xff0c;因为调用start方法之后不一定立…

分享148个ASP源码,总有一款适合您

ASP源码 分享148个ASP源码&#xff0c;总有一款适合您 下面是文件的名字&#xff0c;我放了一些图片&#xff0c;文章里不是所有的图主要是放不下...&#xff0c; 148个ASP源码下载链接&#xff1a;https://pan.baidu.com/s/1e2PvBmXxZA8C3IelkP8ZtQ?pwdj7lp 提取码&#x…

node.js 安装步骤

1、下载安装包 Node.js 官方网站下载&#xff1a;Node.js 选择操作系统对应的包&#xff1a; 下载完成&#xff0c;安装包如下&#xff1a; 2、安装Node 打开安装&#xff0c;傻瓜式下一步即可&#xff1a; 选择安装位置&#xff0c;我这里装在D盘下&#xff1a; 安装成功&…

图和树基础算法笔记

图的大部分知识在《离散数学》中都已经学习了&#xff0c;所以我主要放一些不知道的知识 常用概念 有很少边或弧&#xff08;如 e < n log n&#xff0c;e指边数&#xff0c;n指顶点数&#xff09;的图称为稀疏图&#xff0c;反之称为稠密图。完全图&#xff1a;每个顶点的…

[引擎开发] 现代图形API - dx12篇

本文将从性能优化的角度去阐述像dx12这样的现代图形API的一些设计理念。 当我们深入优化渲染管线的时候&#xff0c;我们会发现存在的几个瓶颈主要是这样的&#xff1a; ① 线程存在不合理的等待 ② CPU向GPU编码传输数据非常耗时 ③ CPU频繁地切换渲染上下文非常耗时 因此有时…

Python---库的使用

专栏&#xff1a;python 个人主页&#xff1a;HaiFan. 专栏简介&#xff1a;本专栏主要更新一些python的基础知识&#xff0c;也会实现一些小游戏和通讯录&#xff0c;学时管理系统之类的&#xff0c;有兴趣的朋友可以关注一下。 库前言标准库使用import导入模块例1例2例3 文件…

老司机经验分享:生产级中间件系统架构设计实践

目录 1、Master-Slave架构2、异步日志持久化机制3、检查点机制&#xff1a;定时持久化全量数据4、引入检查点节点5、总结 & 思考 这篇文章&#xff0c;给大家来聊一个生产级的中间件系统的架构设计实践&#xff0c;希望给对中间件系统感兴趣的同学一点启发。 1、Master-S…

【Java|golang】1663. 具有给定数值的最小字符串---int32切片类型转化string

小写字符 的 数值 是它在字母表中的位置&#xff08;从 1 开始&#xff09;&#xff0c;因此 a 的数值为 1 &#xff0c;b 的数值为 2 &#xff0c;c 的数值为 3 &#xff0c;以此类推。 字符串由若干小写字符组成&#xff0c;字符串的数值 为各字符的数值之和。例如&#xff…

修改VS2015的文件编码格式为utf8,解决在Ubuntu下中文输出为乱码的问题

开发环境&#xff1a; Windows系统&#xff1a;Windows 10 家庭版&#xff0c;VS2015社区版 Linux系统&#xff1a;Ubuntu 22.04 LTS Server版&#xff0c;gcc version 11.3.0 (Ubuntu 11.3.0-1ubuntu1~22.04) 今天编写跨平台的代码&#xff0c;在Windows下用VS2015编写&a…

C++ AVL树

前言 众所周知红黑树是由AVL树改进得来的&#xff0c;想要深入学习哈希表的底层存储那么AVL的学习就相当有必要了。 本来想将AVL的插入删除都能实现&#xff0c;但是在写删除功能时碰到了难题和Bug&#xff0c;所以暂时先给出插入的实现过程&#xff0c;和删除功能的实现思路 …

【日常系列】LeetCode《29·动态规划4》

数据规模->时间复杂度 <10^4 &#x1f62e;(n^2) <10^7:o(nlogn) <10^8:o(n) 10^8<:o(logn),o(1) 内容 字符串/数组dp问题 动态规划中的双状态问题 lc 139【top100】&#xff1a;单词拆分 https://leetcode.cn/problems/word-break/ 提示&#xff1a; 1 <…

Qt扫盲-QHttpPart类理论总结

QHttpPart类理论总结一、概述二、使用1. 设置头2. 设置内容一、概述 QHttpPart类保存一个主体部分&#xff0c;用于HTTP multipart MIME消息中(由QHttpMultiPart类表示)。 QHttpPart由一个头块和一个数据块组成&#xff0c;它们由两个连续的新行相互分隔。一个部分的例子是: …

智能合约开发——Sui/Move vs. Solana/Rust

1. 引言 前序博客有&#xff1a; zkMove——针对Move合约生态的zkVM 定位为高性能L1的Aptos和Sui&#xff0c;均采用Move合约编程语言。Solana也定位为高性能L1&#xff0c;但其采用Rust合约编程语言。本文重点对比Sui/Move和Solana/Rust合约编程语言。【Aptos/Move为不同的M…

三、Java框架之SpringMVC1_MVC基础

文章目录1. SpringMVC简介1.1 回顾Servlet技术1.2 SpringMVC入门案例步骤1&#xff1a;创建javaweb项目&#xff0c;并导入jar包步骤2&#xff1a;创建Controller步骤3&#xff1a;创建SpringMVC的配置文件步骤4&#xff1a;使用配置类替换web.xml步骤5&#xff1a;启动项目并访…

PyTorch深度学习实践第二讲线性模型

目录监督学习四步骤线性模型泛化代码作业监督学习四步骤 DataSet&#xff08;数据集&#xff09;Model&#xff08;模型选择和设计&#xff0c;例如神经网络&#xff0c;决策树等&#xff09;Training&#xff08;大部分模型都需要训练&#xff0c;都有些例如KNN不需要训练&am…

BFS(四)127. 单词接龙、433. 最小基因变化

目录 127. 单词接龙 433. 最小基因变化 127. 单词接龙 字典 wordList 中从单词 beginWord 和 endWord 的 转换序列 是一个按下述规格形成的序列 beginWord -> s1 -> s2 -> ... -> sk&#xff1a; 每一对相邻的单词只差一个字母。 对于 1 < i < k 时&am…

Qt 6.x中Qt Quick简介及示例

Qt Quick首次在Qt 4.7和Qt Creator 2.1中引入&#xff0c;是一种高级UI技术。 Qt Quick模块是用于编写QML(Qt Meta-Object Language, Qt元对象语言)应用程序的标准库。Qt QML模块提供了QML引擎(engine)和语言基础设施&#xff0c;而Qt Quick模块提供了使用QML创建用户界面…

LCD timing的理解

前言 LCD的时序,之前也有介绍过(深入裸机),但是在介绍这些参数的时候是以感性的认识去理解的,而且多少有些错误,我们以内核文档中的描述为准(Documentation/fb/framebuffer.txt),在结合全志平台来重新正确的理解这些参数。 我们在看下文档中的解释: The frame buffe…

【学习笔记】智能合约引擎

图片来源&#xff1a;https://www.researchgate.net/publication/336453428_Detecting_nondeterministic_payment_bugs_in_Ethereum_smart_contracts/figures?lo1智能合约是区块链技术的核心。我们可以根据以下公式定义智能合约智能合约事务处理和保存机制完备的状态机智能合约…

【手写 Promise 源码】第一篇 - Promise 简介

一&#xff0c;前言 上一篇&#xff0c;完成了 Promise 源码学习的目录&#xff1b; 本篇&#xff0c;主要对 Promise 进行简单的概括介绍&#xff1b; 二&#xff0c;Promise 简介 Promise 是一个类或构造函数&#xff0c;是 JS 原生提供的&#xff0c;通过实例化 Promise …