bytea
とBLOB
は両方とも、生のバイナリデータを格納するためのデータベース内のデータ型です。それらはbase64などのエンコードではないので、そのものを変換することはありませんです。
しかし、現実には、あなたのアプリケーションは、少なくとも5つの形で、このデータを処理します:
- PostgreSQLの
bytea
列
- サーバー側のアプリケーションでの変数(おそらく文字列またはバイト配列)
- あなたのクライアントにサーバーをリンクAPIにおけるデータのストリームが
- クライアントサイドのモバイルアプリケーションでの変数(おそらく、このようなBASE64など、いくつかのASCIIセーフ形式でエンコードされた)
- へ/サーバーサイドの言語、サーバー側からデータが順番にこれらの形のそれぞれを流れますので、あなたが心配する必要は変換がSQLiteのにはPostgreSQLされていませんが、PostgreSQLのSQLiteの
BLOB
列
言語とAPIエンコーディングとの間の変換などが含まれます。 MySQLを使用するようにサーバーを変更したり、別のファイルにデータを格納したり、その場で作成する方法を見つける場合は、モバイルアプリを変更する必要はありません。プロセスの2つの端が完全に分離されます。
これは、ディスクにファイルを格納するときにプログラム環境がデータを操作するのと同じように、エンコードを明示的に理解するうえで正しい機能を使用することと同じくらいですが、file.put(data)
などと書いてください。
どちらも不透明なデータを格納します。どのようなコンバージョンを考えていますか? –