數據庫中有一個名爲blob的列類型,它用於存儲二進制數據。數據庫中的二進制數據,blob與壓縮的base64
但我通常看到的解決方案是壓縮二進制數據,然後將二進制數據轉換爲base64,並將base64字符串存儲爲數據庫中的varchar或text。
的Python代碼示例:
import zlib, base64
base64_str = base64.b64encode(zlib.compress(binary_data, 9))
所以有二進制數據存儲到數據庫中的兩個方法:
- 爲BLOB
- 作爲壓縮的base64
我的問題是: 哪種方式更好,爲什麼?
我不明白爲什麼有人會使用方法2.它引入了不必要的複雜性並將數據混淆了兩次。不過,我不會發表這個答案,因爲我沒有任何確鑿的證據表明沒有壓縮base64比BLOB更有利的情況。 – Polynomial