• MySQL | 存储引擎与数据类型


    1、存储引擎

    1.1、什么是存储引擎

    数据库存储引擎是数据库底层软件组件,数据库管理系统使用数据引擎进行创建、查询、更新和删除数据操作。不同的存储引擎提供不同的存储机制、索引技巧、锁定水平等功能,使用不同的存储引擎还可以获得特定的功能。MySQL的核心就是存储引擎。

    1.2、MySQL支持的存储引擎

    MySQL5.7支持的存储引擎有InnoDB、MyISAM、Memory、Merge、Archive、Federated、CSV、BLACKHOLE等。可以使用SHOW ENGINES语句查看系统所支持的引擎类型。
    InnoDB是系统的默认引擎,支持可靠的事务处理。使用语句SET default_storage_engine=<存储引擎名>可以修改数据库临时的默认存储引擎。

    2、数据类型

    数据类型(data_type)是指系统中所允许的数据的类型。数据库中的每个列都应该有适当的数据类型,用于限制或允许该列中存储的数据。

    2.1、整数类型

    类型名 说明
    TINYINT 很小的整数
    SMALLINT 小的整数
    MEDIUMINT 中等大小的整数
    INT(INTEGER) 普通大小的整数
    BIGINT 大整数

    2.2、浮点数类型和定点数类型

    类型名 说明
    FLOAT(M,N) 单精度浮点数
    DOUBLE(M,N) 双精度浮点数
    DECIMAL(M,D) 压缩的浮点数
    DEC 压缩的浮点数
    浮点数类型和定点类型都可以用(M,N)来表示,其中M称为精度,表示总共的位数;N称为标度,表示小数的位数。不论是定点还是浮点数,如果用户指定的精度超出精度范围,则会四舍五入进行处理。FLOAT和DOUBLE在不指定精度时,默认会按照实际的精度(由计算机硬度和操作系统决定),DECIMAL如果不指定精度,默认为(10,0)。浮点数相对于定点数的优点是在长度一定的情况下,浮点数能够表示更大的范围,缺点是会引起精度问题。

    2.3、日期和时间类型

    类型名 日期格式 取值范围
    YEAR YYYY 1901~2155
    TIME HH:MM:SS -838:59:59~838:59:59
    DATE YYYY-MM-DD 1000-01-01~9999-12-3
    DATETIME YYYY-MM-DD HH:MM:SS 1000-01-01 00:00:00~9999-12-31 23:59:59
    TIMESTAMP YYYY-MM-DD HH:MM:SS 1980-01-01 00:00:01 UTC~2040-01-19 03:14:07 UTC

    2.4、字符串类型

    类型名 说明
    CHAR(M) 固定长度非二进制字符串
    VARCHAR(M) 变长非二进制字符串
    TINYTEXT 非常小的非二进制字符串
    TEXT 小的非二进制字符串
    MEDIUMTEXT 中等大小的非二进制字符串
    LONGTEXT 大的非二进制字符串
    ENUM 枚举类型,只能有一个枚举字符串值
    SET 一个设置,字符串对象可以有0个或者多个SET

    2.5、二进制类型

    类型名 说明
    BIT(M) 位字段类型
    BINARY(M) 固定长度二进制字符串
    VARBINARY(M) 可变长度二进制字符串
    TINYBLOB(M) 非常小的BLOB
    BLOB(M) 小的BLOB
    MEDIUMBLOB(M) 中等大小的BLOB
    LONGBLOB(M) 非常大的BLOB
  • 相关阅读:
    深入理解JavaScript闭包
    冒泡排序
    Objective-C中的self和super
    IOS中UIKit——UIButton的背景图像无法正常显示的原因
    IOS绘图——简单三角形
    NSDateFormatter中时间格式串的含义
    IOS屏幕布局
    IOS学习感想
    WWDC————苹果全球开发者大会
    刚开始学IOS遇到的类和方法
  • 原文地址:https://www.cnblogs.com/Cyzhouke/p/13733125.html
Copyright © 2020-2023  润新知