0010|0010| BLOB类型处理
概述
- BLOB是可变的数据类型,在开发中,一般不会把二进制的文件(图片、音频、视频)直接存放在数据库中,而是把文件的存储路径存储在数据库中。
拔萝卜 | 大小 |
---|---|
TINYBLOB | 255个字节 |
BOLB | 65535字节 |
MEDIUMBLOB | 16M |
LONGBLOB | 4G |
- 在MySQL中,TEXT 类型 VARCHAR 类型是一样的,仅仅是容量不一样而已,TEXT一般用于存储大文本。(在Java代码中,是相同的,都是作为String类型)
泰克斯特 | 大小 |
---|---|
TINYTEXT | 255个字节 |
TEXT | 65535个字节 |
MEDIUMTEXT | 16M |
LONGTEXT | 4G |
数据类型 | 说明 |
---|---|
CHAR | 保存固定长度的字符串,可包含字母、数字以及特殊字符。在括号中指定字符串的长度。最多 255 个字符。 |
VARCHAR | 保存可变长度的字符串,可包含字母、数字以及特殊字符。在括号中指定字符串的最大长度。最多 255 个字符。(如果值的长度大于 255,则被转换为 TEXT 类型) |
数据类型 | 说明 |
---|---|
TINYTEXT | 存放最大长度为 255 个字符的字符串。 |
TEXT | 存放最大长度为 65,535 个字符的字符串。 |
数据类型 | 说明 |
---|---|
BLOB | 用于 BLOBs (Binary Large OBjects)。存放最多 65,535 字节的数据。 |
MEDIUMTEXT | 存放最大长度为 16,777,215 个字符的字符串。 |
MEDIUMBLOB | 用于 BLOBs (Binary Large OBjects)。存放最多 16,777,215 字节的数据。 |
LONGTEXT | 存放最大长度为 4,294,967,295 个字符的字符串。 |
LONGBLOB | 用于 BLOBs (Binary Large OBjects)。存放最多 4,294,967,295 字节的数据。 |
数据类型 | 说明 |
---|---|
ENUM(x,y,z,etc.) | 允许你输入可能值的列表。可以在 ENUM 列表中列出最大 65535 个值。如果列表中不存在插入的值,则插入空值。(注释:这些值是按照你输入的顺序存储的)(可以按照此格式输入可能的值:ENUM(‘X’,‘Y’,‘Z’)) |
SET | 与 ENUM 类似,SET 最多只能包含 64 个列表项,不过 SET 可存储一个以上的值。 |
- 把一张图片存到 t_image 表中。
//把一张图片存到 t_image 表中。
@Test
public void testInsertImg() throws Exception{
String sql = "INSERT INTO t_image (img) VALUES (?)";
Connection conn = JDBCUtil.getConnection();
PreparedStatement psta = conn.prepareStatement(sql);
psta.setBlob(1, new FileInputStream("这里写图片的地址"));
psta.executeUpdate();
JDBCUtil.close(conn, psta, null);
}
【0010|0010| BLOB类型处理】
文章图片
- 将 t_image 表中的图片存到磁盘中
//将 t_image 表中的图片存到磁盘中。
@Test
public void testSaveImg() throws Exception{
String sql = "SELECT * FROM t_image WHERE id=?";
Connection conn = JDBCUtil.getConnection();
PreparedStatement psta = conn.prepareStatement(sql);
psta.setLong(1, 6l);
ResultSet rs = psta.executeQuery();
if(rs.next()) {
Blob img = rs.getBlob("img");
InputStream in = img.getBinaryStream();
//文件拷贝
Files.copy(in, Paths.get("这里写新文件的地址和名字"));
}
}
推荐阅读
- mysql|InnoDB数据页结构
- 接口|axios接口报错-参数类型错误解决
- 带你了解类型系统以及flow和typescript的基本使用
- 史前艺术的审美类型「清央美术」
- 认识图表
- MySQL|MySQL 5.7参考手册_11.1 数据类型概览
- 人的四种气质类型和四种血型性格辨析
- 二、Redis的五种常用数据类型
- js类型转换和内存
- 小程序开发|小程序开发 - 页面传值url类型