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

本文涉及的产品
RDS DuckDB + QuickBI 企业套餐,8核32GB + QuickBI 专业版
RDS MySQL DuckDB 分析主实例,基础系列 4核8GB
RDSClaw,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[时间戳]


相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
相关文章
|
SQL 关系型数据库 MySQL
网安入门之MySQL后端基础
《网安入门之MySQL后端基础》简介: 本文介绍了数据库及MySQL的基础知识,涵盖数据库的概念、结构与操作。数据库是组织化存储数据的集合,通过表、列、行等结构实现高效管理。MySQL作为开源的关系型数据库管理系统,广泛应用于Web开发。文中详细讲解了MySQL的基本操作,如增(INSERT)、删(DELETE)、改(UPDATE)、查(SELECT)等语句的使用方法,并介绍了数据库事务的ACID特性。此外,还探讨了SQL注入攻击的风险及防范措施,强调了预处理语句的重要性。最后,简述了PHP中mysqli扩展的使用方法,包括连接数据库、执行查询和关闭连接等步骤。
|
8月前
|
SQL 分布式计算 大数据
SparkSQL 入门指南:小白也能懂的大数据 SQL 处理神器
在大数据处理的领域,SparkSQL 是一种非常强大的工具,它可以让开发人员以 SQL 的方式处理和查询大规模数据集。SparkSQL 集成了 SQL 查询引擎和 Spark 的分布式计算引擎,使得我们可以在分布式环境下执行 SQL 查询,并能利用 Spark 的强大计算能力进行数据分析。
|
存储 人工智能 搜索推荐
详解MySQL字符集和Collation
MySQL支持了很多Charset与Collation,并且允许用户在连接、Server、库、表、列、字面量多个层次上进行精细化配置,这有时会让用户眼花缭乱。本文对相关概念、语法、系统变量、影响范围都进行了详细介绍,并且列举了有可能让字符串发生字符集转换的情况,以及来自不同字符集的字符串进行比较等操作时遵循的规则。对于最常用的基于Unicode的字符集,本文介绍了Unicode标准与MySQL中各个字符集的关系,尤其详细介绍了当前版本(8.0.34)默认字符集utf8mb4。
2955 82
|
关系型数据库 MySQL Linux
CentOS 7系统下详细安装MySQL 5.7的步骤:包括密码配置、字符集配置、远程连接配置
以上就是在CentOS 7系统下安装MySQL 5.7的详细步骤。希望这个指南能帮助你顺利完成安装。
2993 26
|
SQL 关系型数据库 MySQL
【YashanDB知识库】字符集latin1的MySQL中文数据如何迁移到YashanDB
本文探讨了在使用YMP 23.2.1.3迁移MySQL Server字符集为latin1的中文数据至YashanDB时出现乱码的问题。问题根源在于MySQL latin1字符集存放的是实际utf8编码的数据,而YMP尚未支持此类场景。文章提供了两种解决方法:一是通过DBeaver直接迁移表数据;二是将MySQL表数据转换为Insert语句后手动插入YashanDB。同时指出,这两种方法适合单张表迁移,多表迁移可能存在兼容性问题,建议对问题表单独处理。
【YashanDB知识库】字符集latin1的MySQL中文数据如何迁移到YashanDB
|
SQL 存储 机器学习/深度学习
如何让SQL速度飞起来 入门YashanDB优化器
优化器,SQL引擎的核心组成部分,是数据库中用于把关系表达式转换成最优执行计划的核心组件,影响数据库系统执行性能的关键组件之一。
200 15
|
关系型数据库 MySQL 数据库
MySQL数据库基础(数据库操作,常用数据类型,表的操作)
MySQL数据库基础(数据库操作,常用数据类型,表的操作)
216 5
|
SQL 存储 数据管理
SQL数据库的使用指南:从入门到精通
随着信息技术的飞速发展,数据库已成为各类企业和组织不可或缺的一部分。作为最流行的数据库管理系统之一,SQL数据库广泛应用于各种场景,如数据存储、数据管理、数据分析等。本文将详细介绍SQL数据库的使用方法,帮助初学者快速入门,并帮助有经验的开发者深化理解。一、SQL数据库基础首先,我们需要理解SQL数
694 2
|
存储 关系型数据库 MySQL
MySQL支持多种数据类型
MySQL支持多种数据类型
361 4
|
SQL 安全 关系型数据库
SQL自动化注ru-SQLmap入门操作(一)
SQL自动化注ru-SQLmap入门操作(一)

推荐镜像

更多
下一篇
开通oss服务