【MySQL系列】SQL语句入门(创建删除操作)、字符集和数据类型详解

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 RDS PostgreSQL,集群系列 2核4GB
简介: 哈喽,大家好💓,在上一篇博客中,大致讲解了数据库的相关知识,它的作用、定义、分类等等。从本篇博客开始,将详细讲解关系型数据库MySQL的操作与使用,以及SQL语句的讲解。

💐 🌸 🌷 🍀 🌹 🌻 🌺 🍁 🍃 🍂 🌿 🍄🍝 🍛 🍤

📃个人主页 :阿然成长日记 👈点击可跳转

📆 个人专栏: 🔹数据结构与算法🔹C语言进阶

🚩 不能则学,不知则问,耻于问人,决无长进

🍭 🍯 🍎 🍏 🍊 🍋 🍒 🍇 🍉 🍓 🍑 🍈 🍌 🍐 🍍

前言:

哈喽,大家好💓,在上一篇博客中,大致讲解了数据库的相关知识,它的作用、定义、分类等等。从本篇博客开始,将详细讲解关系型数据库MySQL的操作与使用,以及SQL语句的讲解。

✉️一、何为安装MySQL

🔷所谓的安装MySQL就是给主机安装数据库管理系统DBMS(database manage system),这个管理程序可以管理多个数据库

🔷一个数据库中可以存放多张表,来保存数据

二、什么是字符集⛎

1.字符集分类

字符集是一套符合和编码,校验规则(collation)是在字符集内用于比较字符的一套规则,即字符集的排序规则。MySQL可以使用对种字符集和检验规则来组织字符


字符集名称 占用字节数
ASCII 1
gbk 1 ~ 2
utf8 1 ~ 3
utf8mb4 1 ~ 4

ASCII字符集:只收录了128个字符,包括空格,标点符号,数字,大小写字母和一些不可见字符,不能表示中文。采用一个字节表示

gbk字符集:收录了汉字(6763个)以及拉丁字母、希腊字母、日文、俄文等字符,同时这种字符集又兼容ASCII字符集。当字符再ASCII字符集表示范围内的话就采用一个字节表示,否则采用两个字节表示。

utf8字符集:在MySQL中utf8字符集是经过MySQL设计者阉割过后的字符集(为了尽可能省空间),该字符集最大使用3个字节来表示一个字符,不可以存储表情或某些非常特殊的字符,在数据库字符集、表字符集、列字符集等选型的时候需要注意了。

utf8mb4字符集:MySQL一般建议使用utf8mb4字符集,该字符集最大使用4个字节来表示一个字符,可以存储表情或某些非常特殊的字符。补充:每个国家之间的编码不同,也存在着一些跨平台的问题,制定了一些国际通用的编码,最常用的就是UTF8,UTF8对世界上所有的语言文字做了编码注意:我们主要学习的MySQL目前支持多字符集,并且,支持在不同的字符集之间转换(便于移植和支持多语言)。

2.字符集的校对规则:

以字符集名称开头,以_ci(不区分大小写)_cs(区分大小写)或_bin(二进制文件)结尾。

例如:

Utf8_bin:区分大小写 、

utf8_general_cs区分大小写

Utf8_general_ci 不区分大小写,将字符串每个字符串用二进制数据编译存储.

🔉三、数据库的创建

1.格式:

语句:create dabase 数据库名称 默认utf8\utf8_general_c

2.实例:

例1:创建一个使用utf8字符集,并且带校对规则的数据库

create database lhr_db02 character set utf8 collate utf8_bin

说明:

character set :指定字符集;

collate:指定校对规则;

3.❗️注意:

在创建数据库时或是表,为了起名,使用英文‘'‘'(在左上角)反引号可以用来规避关键字。

4.📺显示所有数据库:

1️⃣显示数据库:show databases 注意+s

2️⃣显示数据可创建语句:show create database 数据库名称


四、数据库的删除

1.格式:

删除数据库指令:DROP DATABASE 数据库名称

2.例子:

删除数据库lhr_db02。 看下图已经没有了。

❌注意:慎重使用

五、数据类型

Mysql数据类型(列类型):

数值类型:

1.整形:

🔸tinyint[1个字节]

🔸 smallint[2个字节]

🔸Mediumint [3个字节]

🔸int[4个字节]

🔸bigint[8个字节]

2.小数类型:

🔸 float[单精度4个字节]

🔸double[双精度8个字节]

🔸 decimal[M,D] (M是位数总和(最大65|默认10),D是小数点后的位数(最大30|默认00)

分signed和unsigned;默认是有符号的

3. 文本类型(字符串类型):

🔸char[0-255]:固定长度,最长255字符

🔸 varchar[0-65535(2^16-1) ]==🔸Text[0-0-65535(2^16-1)]:可变字符串长度,最大65532字节【因为需要1-3个字节表示用于记录varchar里面存放大小,所以65535-3=65532】utf8编码最大是65532/3=21844,jbk编码是两个字节表示一个字符【因为utf8编码是三个字节表示一个字符

❗️注意:varchar(m),这里的表示是m个字符,不是字节,具体一个字符占用几个字节要看使用的是什么编码,注意varchar是一个可变字符串,具体放几个字符,就占用几个位(具体一个一个字符占用几个)

查询速度:char>varchar;定长用char,例如:手机号,身份证号 
                     Longtext[0-2^32-1]


4.二进制数据类型:

🔹blob[0-2^16-1]:bit(m),m的范围是1-64,代表几个比特位 longblob[0-2^32-1],

5.时间类型:

🔹date[年月日]

🔹 time[时分秒]

🔹datetime[年月日时分秒]

🔹timestamp[时间戳]


相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
3天前
|
SQL 存储 关系型数据库
【MySQL基础篇】全面学习总结SQL语法、DataGrip安装教程
本文详细介绍了MySQL中的SQL语法,包括数据定义(DDL)、数据操作(DML)、数据查询(DQL)和数据控制(DCL)四个主要部分。内容涵盖了创建、修改和删除数据库、表以及表字段的操作,以及通过图形化工具DataGrip进行数据库管理和查询。此外,还讲解了数据的增、删、改、查操作,以及查询语句的条件、聚合函数、分组、排序和分页等知识点。
【MySQL基础篇】全面学习总结SQL语法、DataGrip安装教程
|
21天前
|
SQL 存储 缓存
MySQL进阶突击系列(02)一条更新SQL执行过程 | 讲透undoLog、redoLog、binLog日志三宝
本文详细介绍了MySQL中update SQL执行过程涉及的undoLog、redoLog和binLog三种日志的作用及其工作原理,包括它们如何确保数据的一致性和完整性,以及在事务提交过程中各自的角色。同时,文章还探讨了这些日志在故障恢复中的重要性,强调了合理配置相关参数对于提高系统稳定性的必要性。
|
19天前
|
SQL 关系型数据库 MySQL
MySQL 高级(进阶) SQL 语句
MySQL 提供了丰富的高级 SQL 语句功能,能够处理复杂的数据查询和管理需求。通过掌握窗口函数、子查询、联合查询、复杂连接操作和事务处理等高级技术,能够大幅提升数据库操作的效率和灵活性。在实际应用中,合理使用这些高级功能,可以更高效地管理和查询数据,满足多样化的业务需求。
61 3
|
22天前
|
SQL 关系型数据库 MySQL
MySQL导入.sql文件后数据库乱码问题
本文分析了导入.sql文件后数据库备注出现乱码的原因,包括字符集不匹配、备注内容编码问题及MySQL版本或配置问题,并提供了详细的解决步骤,如检查和统一字符集设置、修改客户端连接方式、检查MySQL配置等,确保导入过程顺利。
|
24天前
|
SQL 存储 关系型数据库
MySQL进阶突击系列(01)一条简单SQL搞懂MySQL架构原理 | 含实用命令参数集
本文从MySQL的架构原理出发,详细介绍其SQL查询的全过程,涵盖客户端发起SQL查询、服务端SQL接口、解析器、优化器、存储引擎及日志数据等内容。同时提供了MySQL常用的管理命令参数集,帮助读者深入了解MySQL的技术细节和优化方法。
|
25天前
|
SQL Oracle 关系型数据库
SQL(MySQL)
SQL语言是指结构化查询语言,是一门ANSI的标准计算机语言,用来访问和操作数据库。 数据库包括SQL server,MySQL和Oracle。(语法大致相同) 创建数据库指令:CRATE DATABASE websecurity; 查看数据库:show datebase; 切换数据库:USE websecurity; 删除数据库:DROP DATABASE websecurity;
|
2月前
|
SQL 运维 关系型数据库
MySQL 运维 SQL 备忘
MySQL 运维 SQL 备忘录
52 1
|
1月前
|
SQL 关系型数据库 MySQL
MySql5.6版本开启慢SQL功能-本次采用永久生效方式
MySql5.6版本开启慢SQL功能-本次采用永久生效方式
43 0
|
1月前
|
SQL 关系型数据库 MySQL
mysql编写sql脚本:要求表没有主键,但是想查询没有相同值的时候才进行插入
mysql编写sql脚本:要求表没有主键,但是想查询没有相同值的时候才进行插入
35 0
|
2月前
|
SQL 数据库
SQL数据库基础语法入门
[link](http://www.vvo.net.cn/post/082935.html)