1.MySQL中的小数如何表示,不同表示方法之间有什么区别?
MySQL中使用浮点数和定点数来表示小数。浮点数又分单精度浮点类型(FLOAT)和双精度浮点类型(DOUBLE),定点类型只有一种(DECIMAL)。可以用(M,N)来表示,其中 M 称为精度,表示总共的位数,N 称为标度,是表示小数的位数。
区别:
单精度浮点类型(FLOAT):用于存储单精度浮点数。它需要4个字节的存储空间,可以表示非常大的数字,但在存储过程中会有一定的精度损失,可以存储小数点前8位和小数点后23位的数字。
双精度浮点类型(DOUBLE):用于存储双精度浮点数。它需要8个字节的存储空间,但在存储过程中也会有一定的精度损失,可以存储小数点前16位和小数点后53位的数字。
DECIMAL :类型不同于FLOAT 和 DOUBLE,DECIMAL实际是以串存放的,它支持任意精度的小数,不会有精度损失的问题。
2.BLOB和TEXT分别适合于存储什么类型的数据?
在MySQL中,BLOB和TEXT都是用于存储大量文本数据的数据类型。BLOB是二进制大型对象(Binary Large Object)的缩写,用于存储二进制数据,如图像、音频和视频等文件。与之相反,TEXT用于存储文本数据,如文档、HTML和XML等文件。