BLOB 和 CLOB 数据类型有什么区别?

mysqlmysqli databasejava 8jdbc

Blob 和 Clob 合称为 LOB(大型对象类型)。以下是 Blob 和 Clob 数据类型之间的主要区别。

BlobClob
Blob 的全称是二进制大对象。Clob 的全称是字符大对象。
这用于存储大型二进制数据。这用于存储大型文本数据。
这以二进制流的形式存储值。这以字符流的形式存储值。
使用它,您可以存储视频、图像、gif 和音频文件等文件。
使用它,您可以存储文本文件、PDF 文档、word 文档等文件等等。
MySQL 支持以下数据类型:
  • TINYBLOB

  • BLOB

  • MEDIUMBLOB

  • LONGBLOB

MySQL 支持以下数据类型:
  • TINYTEXT

  • TEXT

  • MEDIUMTEXT

  • LONGTEXT

在 JDBC API 中,它由 java.sql.Blob 接口表示。在 JDBC 中,它由 java.sql.Clob 接口表示。
Blob 对象在 JDBC 中指向 BLOB 的位置,而不是保存其二进制数据。JDBC 中的 Blob 对象指向 BLOB 的位置,而不是保存其字符数据。
为了存储 Blob,JDBC (PreparedStatement) 提供了如下方法:
  • setBlob()

  • setBinaryStream()

为了存储 Clob,JDBC (PreparedStatement) 提供了如下方法:
  • setClob()

  • setCharacterStream()

为了检索 (ResultSet) Blob,它提供了如下方法:
  • getBlob()

  • getBinaryStream

为了检索 (ResultSet) Clob,它提供了如下方法:
  • getClob()

  • getCharacterStream()


相关文章