MySQL--基础篇

news2025/1/11 19:52:27

这里写目录标题

  • 总览
    • MySQl各个阶段
    • 基础篇总览
  • MySQL概述
    • 数据库相关概念
    • 查看本机MySQL版本号
    • 启停mysql
      • 打开windows服务管理
      • windows命令行启停
    • 连接mysql客户端
    • mysql运行逻辑
      • 数据模型
      • 关系型数据库
    • 总结
  • SQL
    • 总览
    • SQL通用语法
    • SQL语句分类
    • DDL
      • 数据库操作
      • 表操作
        • 查询表
        • 创建表结构
        • 数据类型
          • 数值类型
          • 字符串类型
          • 日期类型
          • 案例
    • 二级目录

总览

MySQl各个阶段

在这里插入图片描述

基础篇总览

在这里插入图片描述

MySQL概述

数据库相关概念

在这里插入图片描述
数据库是数据的仓库,存储数据
数据库管理系统,是一个大型软件,他操作着数据库,是人与数据库沟通的桥梁
SQL,是数据库编程语言,通过他可以通过数据库管理系统操作数据库

查看本机MySQL版本号

win + r
cmd
mysql --version
(侧面可以查看本机是否安装了mysql)

启停mysql

打开windows服务管理

在这里插入图片描述
在这里插入图片描述

windows命令行启停

在这里插入图片描述
在这里插入图片描述
注意,本机MySQL注册服务就叫MySQL(通过services.msc就可以看到)

连接mysql客户端

在这里插入图片描述
在这里插入图片描述
配置好环境变量之后,cmd以管理员身份运行,输入
mysql -u -root -p
(-h -p选项可以不写,默认是127.0.0.1 3306,即本机IP的3306端口)
之后输入密码
即可进入到mysql客户端,通过这个窗口输入sql语句,就可以操作mysql数据库了

mysql运行逻辑

数据模型

在这里插入图片描述
客户端就是我们的sql语句输入窗口,
而当我们安装了mysql之后,我们的计算机就变成了mysql数据库服务器
mysql整个服务自带dbms(即数据库管理系统),他可以翻译sql语句,去操作数据库中的数据

在一个数据库服务器中,可以创建多个数据库,而一个数据库又可以创建多个表

关系型数据库

在这里插入图片描述
即多张二维表,且,二维表之间有关系

总结

在这里插入图片描述

SQL

总览

在这里插入图片描述

SQL通用语法

在这里插入图片描述
可以多行可以单行
SQL语句可以使用空格/缩进来增强语句可读性
不区分大小写
注释:–单行注释
/* */ 多行注释

SQL语句分类

在这里插入图片描述
DDL针对数据库,用来制作数据库、删除数据库,制作表的字段
DML针对数据库表中的数据,用来操作数据库表中的数据,进行增删改
DQL针对数据库表中的数据,查询数据库中表的数据
DCL针对数据库的控制,创建数据库用户、控制数据库访问权限

DDL

数据库操作

在这里插入图片描述
几个注意点:
查询:
1、查询所有数据库时,要加database要加s
创建:
2、创建数据库时,database不用加s 且有几个可选项,第一个可选项是if not exists 加上之后的意思是:如果这个数据库名不存在,我再创建这个数据库,如果名称被占用,那么不会再创建,如下是加选项的语句:
在这里插入图片描述
3、使用字符集时,如果想要使用utf8,那么可以使用utf8mb4,因为默认的utf8是3字节,utf8mb4是四字节(同时这也是默认的字符集),存储的数据范围要更大一些
在这里插入图片描述
删除:
4、关于删除,可以加上选项if exists 表示如果存在再进行删除
使用:
5、使用数据库,我们有许多的数据库,我们要进入一个数据库里,进行相关数据的操作,进入数据库就使用use语句
6、当我们进入了数据库,执行了许多sql语句,我们突然忘了当前在哪个数据库了,想要查询当前在哪个数据库,就可以使用查询数据库:select database();,如下图:
在这里插入图片描述

切换数据库:
7、同时如果现在在一个数据库内,可以直接使用use切换到其他数据库

表操作

查询表

在这里插入图片描述
进入数据库之后
使用show tables; 即可查看当前所在数据库所有的表

当我们有一个表之后,可以使用desc来查询表结构
但是使用该语句获得的信息较少,可以使用show create table 表名 查询到具体的建表语句,可以查看相关注释等等,如下图:

上图中标出来的地方 可以忽略 这是默认配置

创建表结构

在这里插入图片描述
其中的字段1、2、3… 都是表头名称 ,后面跟上表头所引领数据的类型

中括号里都是可选内容,即加上comment 后面可以写注释
每个字段语句之间用逗号隔开,最后一个无需加逗号

如下图创建了表的表结构
在这里插入图片描述
需要注意的是:
1、注释要用单引号引起来
2、在sql语句中字符串用varchar表示,之后加括号,括号里是字符串的长度,varchar(50)是表示五十位的字符串,一位代表一个汉字(注意这里的位不是大小,一个汉字的大小是两个字节)

创建完表之后,可以使用上面的show tables查看所有的表
然后可以使用desc 表名,查看一个表的表结构
在这里插入图片描述

数据类型
数值类型

在这里插入图片描述
上图是数值类型的各个类型,其中有许多小整数类型。可以对于一些范围不大的业务,可以适当选取小整数,节省空间

如下案例:
在这里插入图片描述
对于年龄age:一个人的年龄绝对在(0,255)范围内,所以可以使用tinyint类型,同时在后面标注无符号类型unsigned(不加unsigned默认有符号位)
对于分数score:一般是0到100,小数一位,那么double(参数一,参数二) ,参数一:算上小数位最多有几位数字,参数二:小数位占其中的几位

字符串类型

在这里插入图片描述
一般只有char 和 varchar 常用
第一个char 是定长字符串 他的空间一旦被规定就不再改变,因此性能较高
varchar 是变长字符串 他的空间只是规定上限,他会根据具体的内容进行空间匹配,是变长的,因此性能较低

而对于char 和varchar 都有一个参数 表示该字符串的长度
对于用户名,使用varchar合适
对于性别,使用char(1)合适

日期类型

在这里插入图片描述
其中标出来的三个较为常用

DATE YYYY-MM-DD 表示年月日,表示一个日期
TIME HH:MM:SS 时间值或计时 小时:分钟:秒
DATETIME YYYY-MM-DD HH:MM:SS 年月日时分秒

案例

在这里插入图片描述
在这里插入图片描述
注意 字节中的位数不区分汉字还是数字或者字母,只看字符数

二级目录

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

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

相关文章

有什么安全处理方案可以有效防护恶意爬虫

常见的爬虫 有百度爬虫、谷歌爬虫、必应爬虫等搜索引擎类爬虫,此类爬虫经常被企业用于提高站点在搜索引擎内的自然排名,使得站点在各大搜索引擎中的排名能够提高,进一步通过搜索引擎来进行引流为企业增加业务流量。 恶意爬虫与合法、合规的搜…

看了致远OA的表单设计后的思考

更多ruoyi-nbcio功能请看演示系统 gitee源代码地址 前后端代码: https://gitee.com/nbacheng/ruoyi-nbcio 演示地址:RuoYi-Nbcio后台管理系统 更多nbcio-boot功能请看演示系统 gitee源代码地址 后端代码: https://gitee.com/nbacheng/n…

微信小程序的驾校预约管理系统

🍅点赞收藏关注 → 私信领取本源代码、数据库🍅 本人在Java毕业设计领域有多年的经验,陆续会更新更多优质的Java实战项目希望你能有所收获,少走一些弯路。🍅关注我不迷路🍅一 、设计说明 1.1课题背景 在I…

【教学类-43-16】 20240106 推算5-9宫格数独可能出现的不重复题量(N宫格数独模板数量的推算)

作品展示: 通过对各种已有结果的人工推算,目前得到两个结论 一、阶乘基本样式的数量【【123】【321】【231】【132】【312】【312】】6组 结论:阶乘等于出现的基本样式数量 以下N*N格会出现的最大排序数量(比如包含333222111这种…

Spring声明式事务业务bug

Spring 针对 Java Transaction API (JTA)、JDBC、Hibernate 和 Java Persistence API (JPA) 等事务 API,实现了一致的编程模型,而 Spring 的声明式事务功能更是提供了极其方便的事务配置方式,配合 Spring Boot 的自动配置,大多数 …

C++ 二进制图片的读取和blob插入mysql_stmt_init—新年第一课

关于二进制图片的读取和BLOB插入一共包含五步 第一步:初始化 MYSQL_STMT* stmt mysql_stmt_init(&mysql); 第二步:预处理sql语句 mysql_stmt_prepare(stmt,sql,sqllen); 第三步:绑定字段 mysql_stmt_bind_param(stmt,bind); 第四…

用友U8+CRM 逻辑漏洞登录后台漏洞复现

0x01 产品简介 用友U8 CRM客户关系管理系统是一款专业的企业级CRM软件,旨在帮助企业高效管理客户关系、提升销售业绩和提供优质的客户服务。 0x02 漏洞概述 用友 U8 CRM客户关系管理系统 reservationcomplete.php文件存在逻辑漏洞,未授权的攻击者通过…

手把手带你门SpringCloud

目录​​​​​ 1、什么是 SpringCloud? SpringCloud常用组件: 简单介绍组件间作用 2,SpringCloud相关组件:Eureka 3,Spring Cloud核心组件:Feign 4,Spring Cloud核心组件:Zuu…

软件测试|Docker exec命令详细使用指南

简介 Docker exec命令是Docker提供的一个强大工具,用于在正在运行的容器中执行命令。本文将详细介绍Docker exec命令的用法和示例,帮助大家更好地理解和使用这个命令。 Docker是一种流行的容器化平台,允许我们在容器中运行应用程序。有时候…

locust 快速入门--程序调试

背景 对测试的api引入locust后,不在使用requests库进行http请求了,而是通过client属性发送请求,实质是使用HttpSession。 问题:如果对locust程序进行调试 解决方案: 因为locust使用协程,需要开启pych…

微服务-java spi 与 dubbo spi

Java SPI 通过一个案例来看SPI public interface DemoSPI {void echo(); } public class FirstImpl implements DemoSPI{Overridepublic void echo() {System.out.println("first echo");} } public class SecondImpl implements DemoSPI{Overridepublic void ech…

万界星空科技云MES,助力客户快速构建数字工厂

一、MES发展趋势 1、定制化趋势 工业2.0、3.0的技术已较为成熟,部分制造业水平较为发达的国家已经率先进入以网络化、智能化为代表的工业4.0发展阶段,MES作为制造业规划层随着物联网等持续发展,为适应定制化时代,整体技术模块化、服务化将重…

解决Gitee每次push都需要输入用户名和密码

其实很简单,只需要使用命令 git config --global credential.helper store 在你下次push时只需要再输入一次用户名和密码,电脑就会保存下来,之后就无需进行输入了。

TypeScript 从入门到进阶之基础篇(三) 元组类型篇

系列文章目录 TypeScript 从入门到进阶系列 TypeScript 从入门到进阶之基础篇(一) ts基础类型篇TypeScript 从入门到进阶之基础篇(二) ts进阶类型篇 文章目录 系列文章目录TypeScript 从入门到进阶系列前言一、在TypeScript中使用元组二、TypeScript 中元组的使用场景1、让函…

从Spring Cloud Alibaba开始聊架构

作为SpringCloudAlibaba微服务架构实战派上下册和RocketMQ消息中间件实战派上下册的作者胡弦。 另外我的新书RocketMQ消息中间件实战派上下册,在京东已经上架啦,目前都是5折,非常的实惠。 https://item.jd.com/14337086.htmlhttps://item.jd…

【详解】求解迷宫所有路径(递归实现)----直接打穿迷宫

目录 递归的模型: 栈帧: 递归调用深度: ​编辑 用递归算法求解迷宫问题: 小结: 结语: 递归的小小总结,朋友们可以看看,有助于理解后面的递归程序。 递归的模型: …

钡铼技术2023年年度报告来了

不积跬步,无以至千里; 不积小流,无以成江海。 钡铼的2023年 平凡却又意义深远。 在工业自动化及物联网技术发展的道路上,钡铼技术每一个进步都源于不懈的努力和持续的积累。钡铼技术在过去的一年中,稳扎稳打&#xf…

QCharView使用

QChart是 QGraphicsWidget的子类。 QCharView是QGraphicsView的子类 QCharView概念:title、系列、图标Chart、视图 说明: 需要添加Qt组件charts 在使用QChart或者QChartView之前需要添加宏定义QT_CHARTS_USE_NAMESPACE (其实是使用了命名空间)&#xff…

前端uniapp的tab选项卡for循环切换、开通VIP实战案例【带源码/最新】

目录 效果图图1图2 源码最后 这个案例是uniapp&#xff0c;同样也适用Vue项目&#xff0c;语法一样for循环&#xff0c;点击切换 效果图 图1 图2 源码 直接代码复制查看效果 <template><view class"my-helper-service-pass"><view class"tab…

服务号怎么改为订阅号

服务号和订阅号有什么区别&#xff1f;服务号转为订阅号有哪些作用&#xff1f;很多小伙伴想把服务号改为订阅号&#xff0c;但是不知道改了之后具体有什么作用&#xff0c;今天跟大家具体讲解一下。首先我们知道服务号一个月只能发四次文章&#xff0c;但是订阅号每天都可以发…