MySQL数据库应用案例教程 第四章
2021/6/8 19:36:24
本文主要是介绍MySQL数据库应用案例教程 第四章,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
第四章 存储引擎、数据类型和字符集
- 存储引擎是MySQL体系结构的重要组成部分,作用时指定表的类型,规定表如何进行存储和索引数据、是否支持事务等。
- MySQL支持的存储引擎包括InnoDB、MRG_MYISAM、MEMORY、BLACKHOLE、MyISAM、CSV、ARCHIVE、PERFORMANCE_SCHEMA、FEDERATED。
- 查看存储引擎
SHOW ENGINES\G
- 查看MySQL默认存储引擎
SHOW VARIABLES LIKE 'default_storage_engine';
- 修改MySQL默认存储引擎
SET default_storage_engine = MyISAM
- 常用的存储引擎:
InnoDB:为MySQL提供具有提交、回滚、崩溃恢复能力和多版本并发控制的事务安全型表,能高效地处理大量数据。适用于需要事务支持、高并发、数据更新频繁、对数据的一致性和完整性要求较高的计费系统等。
MyISAM:具有较高的插入和查询速度,但支持事务和外键。其创建的数据表都会生成3个文件,文件名和数据表名相同,扩展名不同——.frm:存储表定义;.MYD:存储数据;.MYI:存储索引。适用于对事务完整性没有要求、并发相对较低、数据更新不频繁、以读为主和对数据一致性要求不高的数据表。
MEMORY:主要用于内容变化不频繁的表。其是将数据存储到内存中,无法存太大的表。适用于对数据更新不频繁、存活周期不长和需要对统计结果进行分析的数据表。 - 数据类型用于规定数据的存储格式、约束和有效范围。MySQL提供的数据类型主要包括数值类型、日期和时间类型、字符串类型及JSON类型。
- 数值类型:存储数字型数据,包括整数类型(TINYINT、SMALLINT、MEDIUMINT、INT、BIGINT)、浮点数类型(FLOAT、DOUBL)和定点数类型(DECIMAL)。
- 在定义整数类型的字段时,在类型名称后面的括号中加入数字,可以指定显示宽度。
- 查看系统帮助
HELP CONTENTS; -- 查看帮助文档 HELP DATA TYPES; -- 查看MySQL支持的所有数据类型 HELP + 一个任意数据类型; -- 查看其存储范围
- YEAR类型会被自动转换为标准格式YYYY;DATE类型可输入的不严格格式——YYYY-DD-MM、YYYYDDMM、YYYYDDMM、YYDDMM、YY-DD-MM、YYDDMM会被转为标准格式YYYY-MM-DD;TIME类型可支持D HH:MM:SS格式,会转为HH:MM:SS;DATETIME可输入不严格的值YYYYMMDDHHMMSS、YYMMDDHHMMSS、YYYYMMDDHHMMSS、YYMMDDHHMMSS会被转为标准格式YYYY-MM-DD HH:MM:SS;TIMESTAMP与DATETIME相似,但是TIMESTAMP的存储范围较小。TIMESTAMP与DATETIME两者最大的区别是:TIMESTAMP可根据时区进行转换,根据时区不同,显示的时间值也不同。
- 字符串类型:CHAR、VARCHAR、BINARY、VARBINARY、BLOB(二进制字符串,图片和音乐等文件)、TEXT(文本字符串)、ENUM(单选项)、SET(多选项)等。
- JSON类型:可插入数组和对象。JSON数组和对象允许嵌套。
- 字符集是指一套文字符号及其编码和排序规则的集合。
- 查看MySQL中所有可用的字符集。
SHOW CHARACTER SET;
- MySQL字符集包括字符集和排序规则两部分。
查看字符集所对应的排序规则:SHOW COLLATION LIKE '字符集名称%';
排序规则结尾为:“_ci”(大小写不敏感)、“_cs”(大小写不敏感)或者“_bin”(二元,基于字符编码的值并且与language无关)。 - 字符集和排序规则分为:服务器级、数据库级、数据表级、字段级。
- 服务器级:修改默认字符集和排序规则
character-set-server = utf8; collation-server = utf8_general_ci;
- 数据库级:
创建数据库时选择字符集:CREATE DATABASE database_name DEFAULT CHARSET set_name;
修改数据库的字符集:
ALTER DATABASE database_name DEFAULT CHARSET utf8;
这篇关于MySQL数据库应用案例教程 第四章的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-04部署MySQL集群项目实战:新手入门教程
- 2024-11-04如何部署MySQL集群资料:新手入门指南
- 2024-11-02MySQL集群项目实战:新手入门指南
- 2024-11-02初学者指南:部署MySQL集群资料
- 2024-11-01部署MySQL集群教程:新手入门指南
- 2024-11-01如何部署MySQL集群:新手入门教程
- 2024-11-01部署MySQL集群学习:新手入门教程
- 2024-11-01部署MySQL集群入门:新手必读指南
- 2024-10-23BinLog入门:新手必读的MySQL二进制日志指南
- 2024-10-23Binlog入门:MySQL数据库的日志管理指南