MySQL中的数据类型以及存储引擎

数据表

  1. 数据表是存储数据的数据结构
  2. 表由行和列组成
  3. 一定先有表结构再有数据
  4. 至少有一列,可以没有多行

数据类型

  1. 字符串
    – CHAR(M)定长字符串, M个字节
    – VARCHARM(M), L+1个字节
    – TINYTEXT
    – TEXT
    – MEDIUMTEXT
    – LONGTEXT
    – ENUM(‘VALUE1’, ‘VALUE2’…) 枚举字符串,最多列举65535个值(比如性别男,女,中性), 但是ENUM只能保存一个值
    – SET(‘VALUE1’, ‘VALUE2’,…)集合,最多保存64个值,可以保存多个值。

  2. 浮点数
    – FLOAT[(M,D)]M是字数总位数,D是小数点后面的位数
    –DOUBLE[(M,D)]
    –DECIMAL[(M,D)]

  3. 布尔值: 没有boolean

  4. 整数: 数字越大字节越大,记不住的时候查手册
    – TINYINT
    – SMALLINT
    – MEDIUMINT
    – INT
    – BIGINT
    – BOOLEAN = TINYINT(1), 0 为false其余为ture

  5. 日期时间类型
    – TIME
    – DATE
    – DATETIME
    – TIMESTAMP
    – YEAR

  6. 二进制类型:保存图片以及视频的路径

存储引擎

  1. 定义:
    存储引擎就是指表的类型。 数据库的储存类型决定了表在计算机中的存储方式。
  2. 查看存储引擎:
mysql> SHOW ENGINES\G;

  Engine: PERFORMANCE_SCHEMA
     Support: YES
     Comment: Performance Schema
Transactions: NO
          XA: NO
  Savepoints: NO
  • support 代表mysql是否支持这个引擎

  • comment: 存储引擎的特点

  • savepoint: 是否支持保存点

  • XA:是否支持分布式的XA规范

  • TRANSCATIONS: 是否支持事物处理

  • 只查看支持的存储引擎


mysql> SHOW VARIABLES LIKE 'have%';
+------------------------+-------+
| Variable_name          | Value |
+------------------------+-------+
| have_compress          | YES   |
| have_crypt             | NO    |
| have_dynamic_loading   | YES   |
| have_geometry          | YES   |
| have_openssl           | YES   |
| have_profiling         | YES   |
| have_query_cache       | YES   |
| have_rtree_keys        | YES   |
| have_ssl               | YES   |
| have_statement_timeout | YES   |
| have_symlink           | YES   |
+------------------------+-------+
  • 查看默认的存储引擎: InnoDB
  1. 常用的存储引擎
    – InnoDB
    独显效率低,占用空间大, 但支持事物,有崩溃修复能力及病发控制能力。适用于进行频繁修改的数据。
    MyISAM
    支持三种不同的存储格式,默认是静态型,动态型包括变长字段
    处理速度快,占用空间小,但是不支持事物。适用于只存储和读取的数据
    –MEMORY
    数据存放在内存中,速度快。但是服务器需要足够的内存,否则系统内存占用的比较大。 可能会影响到数据额的完整性。 适用于一次性数据,不能建立太大的表
    注意,同一个数据库中可以用多种引擎。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值