基础知识
MySQL 是一个关系型数据库管理系统(RDBMS)
RDBMS(Relational Database Management System)的特点:
数据以表格的形式出现
每行为各种记录名称
每列为记录名称所对应的数据域
许多的行和列组成一张表单
若干的表单组成 database
数据库中的一些术语:
冗余: 存储两倍数据, 冗余降低了性能, 但提高了数据的安全性
主键: 主键是唯一的. 一个数据表中只能包含一个主键
外键: 外键用于关联两个表
索引: 使用索引可快速访问数据库表中的特定信息. 索引是对数据库表中一列或多列的值进行排序的一种结构. 类似于书籍的目录
复合键: 复合键 (组合键) 将多个列作为一个索引键, 一般用于复合索引
数据类型
MySQL 支持多种类型, 大致可以分为三类: 数值, 日期 / 时间和字符串 (字符) 类型
类型 | 大小 | 范围(有符号) | 范围(无符号) | 用途 |
---|---|---|---|---|
TINYINT | 1 字节 | (-128,127) | (0,255) | 小整数值 |
SMALLINT | 2 字节 | (-32 768,32 767) | (0,65 535) | 大整数值 |
MEDIUMINT | 3 字节 | (-8 388 608,8 388 607) | (0,16 777 215) | 大整数值 |
INT 或 INTEGER | 4 字节 (-2 147 483 648,2 147 483 647) | (0,4 294 967 295) | 大整数值 | |
BIGINT | 8 字节 (-9,223,372,036,854,775,808,9 223 372 036 854 775 807) | (0,18 446 744 073 709 551 615) | 极大整数值 | |
FLOAT | 4 字节 (-3.402 823 466 E+38,-1.175 494 351 E-38),0,(1.175 494 351 E-38,3.402 823 466 351 E+38) | 0,(1.175 494 351 E-38,3.402 823 466 E+38) | 单精度 | |
浮点数值 | ||||
DOUBLE | 8 字节 (-1.797 693 134 862 315 7 E+308,-2.225 073 858 507 201 4 E-308),0,(2.225 073 858 507 201 4 E-308,1.797 693 134 862 315 7 E+308) | 0,(2.225 073 858 507 201 4 E-308,1.797 693 134 862 315 7 E+308) | 双精度 | |
浮点数值 | ||||
DECIMAL | 对 DECIMAL(M,D) ,如果 M>D,为 M+2 否则为 D+2 | 依赖于 M 和 D 的值 | 依赖于 M 和 D 的值 | 小数值 |
来源: http://www.bubuko.com/infodetail-3119052.html