我想在数据库而不是网址上使用图像存储。
在我的服务器端,我使用PostgreSQL和read here,“bytea”是用于存储文件的建议格式。
在我的移动应用程序端,数据库是SQLite。似乎数据存储建议格式有“BLOB”as described here。
我想知道,到目前为止我无法清楚地发现,如果从PostgreSQL的“bytea”到SQLite的“BLOB”有任何转换吗?
答案 0 :(得分:2)
bytea
和BLOB
都是数据库中用于存储原始二进制数据的数据类型。它们不是编码,如base64等,所以没有转换为本身。
但实际上,您的应用程序将以至少5种形式处理此数据:
bytea
列BLOB
列数据将依次流经这些表单中的每一个,因此您需要担心的转换不是PostgreSQL到SQLite,而是PostgreSQL到/从服务器端语言,服务器端语言到/从API编码,以及等等。如果您将服务器更改为使用MySQL,或者将数据存储在单独的文件中,或者找到一种即时创建的方法,则不应对移动应用程序进行任何更改。这个过程的两端是完全分开的。
这与使用正确的函数明确理解编码一样多,就像将文件存储到磁盘可能涉及程序环境操纵数据一样,但是你只需要写file.put(data)
或者其他什么