MySQL 中 BLOB 和 TEXT 数据类型有哪些区别?
BLOB 代表二进制大对象,正如其名称所示,它可用于存储二进制数据,而 TEXT 用于存储大量字符串。BLOB 可用于存储二进制数据,这意味着我们还可以存储图片、视频、声音和程序。
例如,以下图像可以存储到 BLOB 中,因为该图像具有二进制数据。
BLOB 值的行为像字节字符串,BLOB 没有字符集。因此,比较和排序完全依赖于字节的数字值。
TEXT 值的行为类似于非二进制字符串或字符字符串。TEXT 有一个字符集,比较/排序完全取决于字符集集合。
使用 TEXT 数据类型创建表
mysql> create table TextTableDemo -> ( -> Address TEXT -> ); Query OK, 0 rows affected (0.58 sec)
借助 DESC 命令描述表。
mysql> DESC TextTableDemo;
以下是输出。
+---------+------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +---------+------+------+-----+---------+-------+ | Address | TEXT | YES | | NULL | | +---------+------+------+-----+---------+-------+ 1 row in set (0.08 sec)
在上述输出中,“Type”表示数据类型,即 TEXT。
使用 BLOB 类型创建表
mysql> create table BlobTableDemo -> ( -> Images BLOB -> ); Query OK, 0 rows affected (0.51 sec)
让我们借助 DESC 命令获取表的描述。
mysql> desc BlobTableDemo;
以下是输出。
+--------+------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +--------+------+------+-----+---------+-------+ | Images | BLOB | YES | | NULL | | +--------+------+------+-----+---------+-------+ 1 row in set (0.04 sec)
在示例输出中,“Type”表示数据类型,即 BLOB。
广告