MYSQL TINYBLOB和LONGBLOB

标签 mysql database file blob space

这是我之前的问题的后续跟踪:Blob and Storage Requirement

我使用SHOW TABLE STATUS进行了一些测试,发现使用的总磁盘空间实际上仅取决于上载到数据库的实际文件的大小,而不取决于列的类型(例如TINYBLOB或LONGBLOG)。

因此,如果不是这种情况,那么当我们选择另一种BLOB类型时有什么区别?

最佳答案

Blob字段的每个大小都保留了额外的字节来保存大小信息。一个longblob使用4 + n个字节的存储空间,其中n是您要存储的Blob的实际大小。如果仅存储(说)10个字节的Blob数据,则将用完14个字节的空间。

相比之下,tinyblob使用1 + n字节,因此您的10个字节将占用11个字节的空间,节省了3个字节。

仅处理几条记录时3个字节就不多了,但是随着数据库记录数的增加,保存的每个字节都是一件好事。

关于MYSQL TINYBLOB和LONGBLOB,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14376557/

相关文章:

mysql - 检查其他表中是否存在行

PHP MySQL 最接近邮政编码

mysql - Cloudways SQLSTATE[HY000] [1045] 访问被拒绝 'root' @'localhost'(使用密码 : YES) (SQL: SHOW FULL TABLES WHERE table_type = 'BASE TABLE' )

sql unique 和对插入设置约束

PHP:是否可以从文件内容(字符串)创建 SplFileObject 对象?

php - 将时间戳转换为秒的问题

python - 如何将我的 Flask 应用程序连接到我的 SQLite3 数据库?

database - 高性能数据库更新(Oracle)

C# - 如何在具有创建日期的目录中生成文件名和子目录的列表

java - 当用户使用 java servlet 上传文件时,如何找到文件的内容类型?