一、导入数据库
参考:大神初生不惑的博客:https://www.yiibai.com/mysql/how-to-load-sample-database-into-mysql-database-server.html
二、 数据类型
在表的字段中规定了使用的是某个数据类型。在MySQL里面我们将数据类型分为了以下一些类型:
- 数值类型(整型、浮点)
- 字符串类型
- 日期时间类型
- 复合类型
- 空间类型(非科学性工作基本不用)
1、数值类型(整型、浮点)
(1)整型
数值数据类型存储数值。多数 DBMS 支持多种数值数据类型,每种存储的数值具有不同的取值范围。显然,支持的取值范围越大,所需存储空间越多。
(表来源:3 天入门MySQL)
MySQL 以一个可选的显示宽度指示器的形式对 SQL 标准进行扩展,这样当从数据库检索一个值时,可以把这个值加长到指定的长度。例如,指定一个字段的类型为 INT(6),就可以保证所包含数字少于 6 个的值从数据库中检索出来时能够自动地用空格填充。需要注意的是,使用一个宽度指示器不会影响字段的大小和它可以存储的值的范围。
多数 DBMS 支持一种用来存储货币值的特殊数值数据类型。一般记为 MONEY 或 CURRENCY,这些数据类型基本上是有特定取值范围的 DECIMAL 数据类型,更适合存储货币值。
(2)浮点类型
(表来源:3 天入门MySQL)
而decimal叫做定点数。在MySQL内部,本质上是用字符串存储的。
2、字符串类型
最常用的数据类型是字符串数据类型。它们存储字符串,如名字、地址、电话号码、邮政编码等。有两种基本的字符串类型,分别为定长字符串和变长字符串。
(表来源:3 天入门MySQL)
(1)CHAR
定长字符串,并且必须在圆括号内用一个大小修饰符来定义。这个大小修饰符的范围从 0-255。定长字符串接受长度固定的字符串,其长度是在创建表时指定的。定长列不允许多于指定的字符数目。它们分配的存储空间与指定的一样多。因此,如果字符串 name 存储到 3个字符的名字字段,则存储的是 3 个字符,缺少的字符用空格填充,或根据需要补为 NULL。而比指定长度小的值将会用空格作填补。
(2)VARCHAR
变长字符串存储任意长度的文本(其最大长度随不同的数据类型和 DBMS 而变化)。有些变长数据类型具有最小的定长,而有些则是完全变长的。不管是哪种,只有指定的数据得以保存(额外的数据不保存)。VARCHAR 类型把它视为最大值并且只使用存储字符串实际需要的长度类型不会被空格填补。VARCHAR 类型可以根据实际内容动态改变存储值的长度。
(3)其他类型
参考 leboop博客:https://blog.csdn.net/L_15156024189/article/details/87433372
3、日期时间类型
(表来源:3 天入门MySQL)
4、复合类型
(表来源:3 天入门MySQL)
(1)set类型
SET是一个字符串对象,可以有零或多个值,其值来自表创建时规定的允许的一列值。SET类型可以从预定义的集合中取得任意数量的值。试图在 SET 类型字段中插入非预定义的值都会使MySQL插入一个空字符串。如果插入一个即有合法的元素又有非法的元素的记录,MySQL 将会保留合法的元素,除去非法的元素。
(2)enum类型
ENUM 是一个字符串对象,其值通常选自一个允许值列表中,该列表在表创建时的列规格说明中被明确地列举。一个 ENUM 类型只允许从一个集合中取得一个值。ENUM 类型字段可以从集合中取得一个值或使用null值,除此之外的输入将会使 MySQL 在这个字段中插入一个空字符串。ENUM 类型在系统内部可以存储为数字,并且从1开始用数字做索引。
参考:https://www.cnblogs.com/skillCoding/archive/2012/03/14/2395404.html