我想在hsqldb数据库中存储文件。有些文件是文本文件,大小从几KB到数百KB不等,有些是二进制文件,大小可能达到几MB。
根据文档(http://hsqldb.org/doc/guide/sqlgeneral-chapt.html#sgc_binary_types),我可以使用类型VARCHAR, VARBINARY和BLOB来存储文件。
我想我会将文件存储为二进制,以便能够以相同的方式存储文本和二进制。但是我不明白VARBINARY和BLOB这两种二进制类型之间的区别,除了它们有不同的默认长度值。
它们之间的区别是什么?哪一个更适合文件内容存储?
VARCHAR或VARBINARY类型不是存储几千字节文件的最佳类型。
可以使用BLOB类型。它和VARBINARY的区别在于BLOB和CLOB使用的大对象专用存储机制。
查看更多细节:
http://hsqldb.org/doc/guide/management-chapt.html mtc_large_objects