数据类型
数据库中每个字段都有适当的数据类型,用于限制或允许该字段中存储的数据。
MySQL中支持三种数据类型:数值型、字符串型、日期和时间型。
不同的数据类型提供不同的取值范围,可以存储的值范围越大,所需的存储空间也会越大。因此应根据实际需要选择最合适的类型,这样有利于提高查询的效率和节省存储空间。
1.数值型
数值型分为整数型和小数型。
- int整数型,包括正数和负数,我们可以指定它的最大长度,如果不指定它默认最多存储11位数。
- float小数型,默认最多存储10位数,其中8位整数2位小数。
- decimal十进制小数型,适合金额、价格等对精度要求较高的数据存储。默认decimal(10,0),表示最多10位数字,其中0位小数。
2.字符串型
字符串型主要用来存储不能进行数学运算的文本数据,还可以存储图片和声音的二进制数据。
char存储定长字符串,可以指定字符长度,如char(10),不论存储数据是否达到10个字节,都会占用10个字节的空间(自动用空格填充),如’abc ',提取数据时需要用trim()去掉多余的空格。因为长度固定,方便程序的存储和查找,存取效率比较高。
varchar存储可变长度字符串,可以指定字符长度,如varchar(10),占用实际字符长度的存储空间,如’abc’。
text长文本字符串型,最大长度65535,不能指定长度。
3.日期时间型
日期时间型用于存储日期和时间格式的数据。
- date为‘yyyy-MM-dd’格式的日期类型。
- datetime为‘yyyy-MM-dd hh:mm:ss’格式的日期时间型。
- timestamp为时间戳,表示从1970-01-01 00:00:00到指定日期一共过了多少秒。
在数据库中字符串和日期时间型的数据都需要用引号括起来。