web-dev-qa-db-ja.com

PostgreSQL - Base64イメージ文字列をBytea列に挿入する方法は?

次のSQLがあります。

CREATE TABLE Documents (
  Id INT NOT NULL,
  UserId INT NOT NULL,
  Label CHARACTER VARYING(220) NOT NULL,
  Image BYTEA NOT NULL,
  PRIMARY Key(Id),
  FOREIGN KEY (UserId) REFERENCES Users(Id)
);
 _

私は知りたいのですが、どのように表64イメージをテーブルに挿入する必要があります。

Base64文字列は、node.jsの fs モジュールを使用して画像を取得した後にバッファーから来ています。

SeaseLizeのRAWクエリを使用してイメージを挿入しようとしていますが、これに関する適切な情報が見つかりませんでした。

3
user11150028

PostgresとSeaseLizeに関する質問に答えるために:

Sequelize.BLOB('tiny') dataTypeを使用する必要があります。

これは、SeaseLizeのデータ型についての詳細について説明します(上記の情報も含まれています)。

http://docs.sequelizejs.com/manual/data-types.html

Tiny Blobに変換すると、PostgresはデフォルトでUTF-8になります。つまり、データをUTF-8エンコーディング、データを保存し、読み取りITをUTF-8として読み取ります。

編集:

Base64を使用して画像バイナリデータをASCII文字列:-] https://developer.mosilla.org/en-us/docs/web/api/windowbase64/)にエンコードします。 base64_encoding_and_decoding

1
David Kamer