创建一个含有BLOB类型的表:
CREATE TABLE `mytable` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`data` longblob,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
当然,你也可以在插入数据的时候使用BLOB类型,例如:
INSERT INTO `mytable` (`data`) VALUES(BINARY('some binary data'));
创建一个含有TEXT类型的表:
CREATE TABLE `mytable` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`textdata` longtext,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
如上所述,你需要在创建表格时指定一个字段类型为TEXT或者其它TEXT类型中的一个。对于插入数据,你可以直接将文本数据插入该字段。
结论 通过BLOB和TEXT类型,MySQL提供了非常好的储存文件格式的方式。如果你需要储存大量的二进制或者文本数据,那么这两种类型都是非常好的选择。无论你是在创建新的表格,还是向旧表格中插入新数据,这两个类型都可以方便地应用。
