【全栈开发】----Mysql基本配置与使用

本篇是在已下载Mysql的情况下进行的,若还未下载或未创建Mysql服务,请转到这篇:

2024 年 MySQL 8.0.40 安装配置、Workbench汉化教程最简易(保姆级)_mysql8.0.40下载安装教程-CSDN博客

本文对于mysql的操作均使用控制台sql原生代码编写

目录

一、MySQL背景介绍

二、Mysql基本操作

1、运行Mysql

2、修改密码

3、显示、创建和删除数据库

显示

创建数据库

删除数据库

三、数据库的基本语句

1、基础数据类型

2、创建表:

简单的创建:

查看数据库下创建的表:

查看表属性:

查看表内容:

添加内容

?编辑?

查看表属性:

删除表:

3、表内的增删改查

增加数据

删除数据

修改数据

查找数据

小结

四、Mysql综合实例

创建表:

插入数据

删除指定数据

修改数据

查找数据

一、MySQL背景介绍

MySQL 是一种广泛使用的关系型数据库管理系统(RDBMS),以其高性能、可靠性和易用性而闻名。作为开源软件,MySQL 遵循 GNU 通用公共许可证(GPL),提供免费和商业版本,适用于各种规模的应用程序开发。它支持多种操作系统,如 Windows、Linux 和 macOS,具有跨平台的灵活性。MySQL 的核心优势在于其高效的查询处理能力,特别适合高并发读写操作,并且内置了丰富的安全特性,如用户权限管理和 SSL 支持,确保数据传输的安全性。此外,MySQL 提供多种存储引擎选择,如 InnoDB 和 MyISAM,以满足不同的应用场景需求。它的广泛应用涵盖了从简单的网站到复杂的企业级应用,包括内容管理系统(CMS)、电子商务平台和大数据分析等。活跃的社区支持和丰富的生态系统使得 MySQL 成为开发者首选的数据库解决方案之一。Oracle 公司自2010年起拥有 MySQL,但其开源版本继续受到全球开发者的青睐和支持。

二、Mysql基本操作

1、运行Mysql

方法一:

直接软件包中自带登录客户端

输入之前下载mysql时输入的密码,点击Enter(设置密码可以看之前这篇:

2024 年 MySQL 8.0.40 安装配置、Workbench汉化教程最简易(保姆级)_mysql8.0.40下载安装教程-CSDN博客)

最左边出现mysql>即代表已进入mysql

方法二:

在cmd终端中进入到mysql文件中的bin目录

依次输入命令:

D:
cd D:load_softwareMysql8.0MySQL Server 8.0Installin

如下图:

输入mysql的进入命令

mysql -uroot -p

这里的p后面加root代表显示输入密码,若不加则默认隐藏密码

输入密码后成功进入页面如下:

注意!在mysql>目录下,输入的语句必须以";"结尾才可运行!

2、修改密码

在mysql>下输入:

ALTER USER 'root'@'localhost' IDENTIFIED BY '718718';

若是在其他设备和端口,则修改root和localhost即可。

8.0以上版本的直接输入下面语句即可:

set password = '';

3、显示、创建和删除数据库

显示

在mysql>目录下输入

show databases;

可以显示目前该数据库服务上所安装的数据库文件,当然,大家的页面和我肯定不一样:

创建数据库

在mysql目录下输入:

create database test default character set utf8; 

(default character set设置默认编码关键字,test是数据库名称)

再次显示数据库,发现test数据库已加入:

删除数据库

输入以下命令即可(test替换成自己要删除的数据库名称):

drop database test; 

三、数据库的基本语句

数据库,我的理解是在一个文件夹中放了很多excel表

首先,进入到一个数据库中:

use test;

查看该数据库中的所有数据表:

show tables;

可以看到现在还是空的

1、基础数据类型

整数:

小数:

decimal是精确小数,double和float和decimal用法相似

字符串:

时间类型:

2、创建表:

设置主键一般为非空,并且可以自增(默认也是非空,可以不写not null)

MySQL还有很多其他的数据类型,例如:set、enum、TinyBlob、Blob、MediumBlob、LongBlob等,详细见官方文档:

MySQL :: MySQL 8.4 Reference Manual

简单的创建:
create table tb1(id int not null primary key auto_increment,name varchar(64))DEFAULT CHARSET=utf8;

这里的primary key auto_increment是设置主键,并且自动加一

这样创建可视性不高,也可以分行,只要不加";"就不会运行:

 create table tb2(
    age int,
    salary tinyint
 )DEFAULT CHARSET=utf8;

查看数据库下创建的表:
show tables;

查看表属性:
desc tb1;

(这里的desc全称是descript)

查看表内容:
select * from tb1;

(*号表示全部)

现在还是空表

添加内容
insert into 表名(列名,...) values(值,...);

也可以一次存入多组数据

insert into 表名(列名,...) values(值,...),(值,...),(值,...)...;

显示:

由于前面设置了主键为auto_increment,序号会自动加一

查看表属性:
desc 表名

删除表:
drop table 表名;

3、表内的增删改查

增加数据
#在表中为某两列插入一行数据
insert into 表名(列名,列名)values(值,值);

#在表中为某几列插入任意行数据
insert into 表名(列名,列名...)values(值,值...),(值,值...),(值,值...),
(值,值...)...;
删除数据
#删除整张表
delete from 表名;
删除表中满足条件的表
delete from 表名 where 条件;

#例子
delete from tb2;
delete from tb2 where id=1;
delete from tb2 where id =1 and name="谭sir";
delete from tb2 where id =2 or name="林sir";
delete from tb2 where id>1;
delete from tb2 where id >= 2;
delete from tb2 where id != 3;
delete from tb2 where id in(l,3);
修改数据
#更新某一列为某值
update 表名 set 列=值;
#更新几列的值
update 表名 set 列=值,列=值...;
#更新满足
update 表名 set 列=值 where 条件;

#例子
update tb2 set password="哈哈哈";
update tb2 set email="哈哈哈"where id >1;
update tb2 set age=age+10 where id>2;
查找数据
#查询整张表
select *from 表名称;
#查询满足条件的列
select 列名称,列名称 from 表名称;
select 列名称,列名称 from 表名称 where 条件;

#例子
select *from tb2;
select id,name from tb2;
select id,name from tb2 where id>10;
select id,name from tb2 where name="xx" and password="xx";
小结

由上文很容易看出,创建数据库和数据表结构,使用原生代码很容易实现,需要提前通过工具+命令创建。

但是,为表中添加数据,若数据量很大时,一行一行添加很不现实,这种情况下一般使用程序来实现增删改查。

四、Mysql综合实例

综合使用所有数据类型创建一个表

创建表:

create table tb2(
    id int not null primary key auto_increment,
    name varchar(64) not null,
    password char(64) not null,
    email varchar(64) not null,
    age tinyint,
    salary decimal(10,2),
    ctime datetime
    )DEFAULT CHARSET=utf8;

插入数据

为该表插入一行内容并显示:

insert into tb2(name,password,email,age,salary,ctime) values("谭sir","123","122685@qq.com",19,100000.20,"2024-12-20 10:02:02");

select * from tb2;

为表中添加多行数据并显示:

#插入数据
insert into tb2(name,password,email,age,salary,ctime) 
values("江sir","1203","122685@qq.com",22,0.23,"2024-12-20 10:02:03"),
("林sir","12003","12285@qq.com",19,234.20,"2024-12-20 10:02:03"),
("徐sir","1230","1285@qq.com",18,12345.20,"2024-12-20 10:02:03"),
("张sir","1023","12685@qq.com",18,23456.20,"2024-12-20 10:02:03"),
("叶sir","1203","12265@qq.com",19,34567.20,"2024-12-20 10:02:03");

#显示
select * from tb2;

删除指定数据

(这里好不容易添加了数据,我就少删点)

#删除id为3的数据
delete from tb2 where id=3;

#显示
select * from tb2;

修改数据

修改一整列

#更新密码
update tb2 set password="12@qq.com"

#显示
select * from tb2;

带条件修改

#更新id大于1的
update tb2 set email='哈哈哈' where id>1;

#更新id大于2的年龄加一
update tb2 set age=age+1 where id>2;

查找数据

查找某两列

select id,name from tb2;

查找满足条件的数据

select id,name,password from tb2 where name="谭sir" and age>18;

本文基于控制台命令,命令繁琐,可视化不太方便,市面上也有一些控制MySQL的软件,后面可能会出新文介绍。还有Python程序存数据进库,也会更新,大家静待。。。

感谢您的三连!!!

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

微软宣布Win11 24H2进入新阶段!设备将自动下载更新

快科技1月19日消息,微软于1月16日更新了支持文档,宣布Windows 11 24H2进入新阶段。 24H2更新于2024年10月1日发布,此前为可选升级,如今微软开始在兼容的Windows 11设备上自动下载并安装24H2版本。 微软表示:“运行Wi…

15. helm包管理器

helm包管理器 一、helm包管理器介绍、安装1、helm包管理器2、核心概念2.1 chart2.2 repository2.3 release 3、helm安装3.1 安装helm3.2 添加helm国内仓库 二、使用helm安装MySQL 8.01、搜索mysql8.0 chart包2、下载mysql8.0 chart包3、按需定制values.yaml3.1 values.yaml文件…

庄小焱——2024年博文总结与展望

摘要 大家好,我是庄小焱。岁末回首,2024 年是我在个人成长、博客创作以及生活平衡方面收获颇丰的一年。这一年的经历如同璀璨星辰,照亮了我前行的道路,也为未来的发展奠定了坚实基础。 1. 个人成长与突破 在 2024 年&#xff0c…

OSCP - Proving Grounds - BullyBox

主要知识点 如果发现有域名,则可以加入/etc/hosts后重新执行nmap,nikto等扫描dirsearch的时候可以使用完整一些的字典文件,避免漏掉信息.git dump 具体步骤 执行nmap 扫描,发现 80和22端口开放,访问后发现被重定向到 bullybox.local Star…

Linux中的基本指令(一)

一、Linux中指令的存在意义 Linux中,通过输入指令来让操作系统执行,以此达到控制操作系统的目的,类似于Windows中的双击,右键新建文件,新建文件夹等 1.补:关于屏幕的几个操作指令 ①清屏指令 clear 回…

C/C++内存管理(超详解)

目录 1.C/C内存分布 2.C语言动态内存管理 2.1 malloc 2.2 free 2.3 calloc 2.4 realloc 3.C动态内存管理 3.1new/delete操作内置类型 3.2new/delete操作自定义类型 3.3operator new与operator delete函数 3.4定位new表达式(placement-new) 1.C/C内存分布 内存中是如…

【React】静态组件动态组件

目录 静态组件动态组件创建一个构造函数(类)使用 class 实现组件**使用 function 实现类组件** 静态组件 函数组件是静态组件: 组件第一次渲染完毕后,无法基于内部的某些操作让组件更新「无法实现自更新」;但是,如果调用它的父组…

前端【3】--CSS布局,CSS实现横向布局,盒子模型

盒子分类 1、块级盒子 2、内联级盒子 3、内联块级盒子 4、弹性盒子 5、盒子内部分区 方法一:使用 float 普通盒子实现横向布局 方法二:使用 display: inline-block 内联块级元素实现横向布局 方法三:使用弹性盒子 flexbox&#xff0…

Python实现过年烟花效果及打包成可执行文件

博客:Python实现过年烟花效果及打包成可执行文件 在这篇博客中,我们将详细讲解如何使用Python和Pygame库实现一个过年烟花效果的程序,并介绍如何将Python脚本打包成Windows上可以直接执行的exe文件。我们将从代码的各个模块入手,…

新星杯-ESP32智能硬件开发--ESP32的I/O组成-系统中断矩阵

本博文内容导读📕🎉🔥 ESP32开发板的中断矩阵、功能描述与实现、相关API和示例程序进行介绍 ESP32中断矩阵将任一外部中断源单独分配到每个CPU的任一外部中断上,提供了强大的灵活性,能适应不同的应用需求。 ESP32中断主…

SpringBoot2 + Flowable(UI)

文章目录 引言I 技术栈软件架构基于 Vue.js 和 Element UI 的后台管理系统工程结构II 依赖rest,logic,conf 的依赖工作流flowable jar包flowable-ui所需jar包III 配置jdbc 配置 nullCatalogMeansCurrent = true引言 I 技术栈 软件架构 前端基于vue 、element-ui框架分模块设…

.Net 6.0 .Net7.0 .Net8.0 .Net9.0 使用 Serilog 按日志等级写入日志及 appsetting.json 配置方式实现

前言 最近使用最新版的Serilog记录日志时,发现以前有些关于Serilog的Nuget弃用了,最关键的是有些配置写法也改变,于是就整理了一下最新版的Serilog配置方式(appsetting.json)的使用 说明:我是用的.Net6,最新长期支持…

sprnigboot集成Memcached

安装Memcached 下载地址 32位系统 1.2.5版本:http://static.jyshare.com/download/memcached-1.2.5-win32-bin.zip 32位系统 1.2.6版本:http://static.jyshare.com/download/memcached-1.2.6-win32-bin.zip 32位系统 1.4.4版本:http://stati…

【数据分析】02- A/B 测试:玩转假设检验、t 检验与卡方检验

一、背景:当“审判”成为科学 1.1 虚拟场景——法庭审判 想象这样一个场景:有一天,你在王国里担任“首席审判官”。你面前站着一位嫌疑人,有人指控他说“偷了国王珍贵的金冠”。但究竟是他干的,还是他是被冤枉的&…

3dmax LOGO的符号、意义和历史,渲染100邀请码1a12

Autodesk 3ds Max 是一款 3D 建模、动画和渲染软件,由 Autodesk, Inc. 于 1996 年开发,其功能是能够创建复杂的数字场景和视觉效果,被专业建筑师、设计师和视频游戏创作者广泛使用,提供了七种语言的 Windows 版本,没有…

线段树优化dp,abc389F - Rated Range

目录 一、题目 1、题目描述 2、输入输出 2.1输入 2.2输出 3、原题链接 二、解题报告 1、思路分析 2、复杂度 3、代码详解 一、题目 1、题目描述 2、输入输出 2.1输入 2.2输出 3、原题链接 F - Rated Range 二、解题报告 1、思路分析 考虑定义 f(i, j) 为 初始分…

青少年CTF练习平台 EasyMD5解题思路

题目 EasyMD5 PHP弱类型/弱等于的判断 翻译 上传之后网页提示:Not a PDF! angry!!! get out from my page 修改文件后缀为pdf 再次上传,答案出来了 s878926199a s155964671a 成功获取flag

Amazon MSK 开启 Public 访问 SASL 配置的方法

1. 开启 MSK Public 1.1 配置 MSK 参数 进入 MSK 控制台页面,点击左侧菜单 Cluster configuration。选择已有配置,或者创建新配置。在配置中添加参数 allow.everyone.if.no.acl.foundfalse修改集群配置,选择到新添加的配置。 1.2 开启 Pu…

SW - 钣金零件保存成DWG时,需要将折弯线去掉

文章目录 SW - 钣金零件保存成DWG时,需要将折弯线去掉概述笔记备注END SW - 钣金零件保存成DWG时,需要将折弯线去掉 概述 如果做需要弯折的切割件,最好做成钣金零件。 最近做了几个小钣金(将钣金展开,建立新草图,在2…

深度学习 Pytorch 基本优化思想与最小二乘法

在正式开始进行神经网络建模之前,我们还需要掌握pytorch中最核心的基础数学工具——autograd(自动微分)模块。虽然对于任何一个通用的深度学习框架都会提供许多自动优化的算法和现成的loss function,但如果想更深入理解神经网络,对深度学习的…