PostgreSQL
 sql >> Teknologi Basis Data >  >> RDS >> PostgreSQL

Menyimpan file di postgres menggunakan node-postgres

Triknya adalah mengkodekan sebagai hex dan menambahkan file dengan \x. Membacanya kembali memang didukung melalui parseByteA yang mengembalikan buffer:

https://github.com/brianc/node-postgres /blob/master/lib/textParsers.js

Inilah yang saya lakukan untuk membaca dalam gambar dari disk pada postgres 9.2.2 dan node.js 0.8.16 dan node-postgres (npm package='pg') 0.11.2:

      fs.readFile(loc_on_disk, 'hex', function(err, imgData) {
        console.log('imgData',imgData);
        imgData = '\\x' + imgData;
        app.pgClient.query('insert into image_table (image) values ($1)',
                           [imgData],
                           function(err, writeResult) {
          console.log('err',err,'pg writeResult',writeResult);
        });
      });

dan apa yang saya lakukan untuk menuliskannya kembali

app.get('/url/to/get/', function(req, res, next) {
  app.pgClient.query('select image from image_table limit 1',
                     function(err, readResult) {
    console.log('err',err,'pg readResult',readResult);
    fs.writeFile('/tmp/foo.jpg', readResult.rows[0].image);
    res.json(200, {success: true});
  });
});



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana cara memperbarui tabel dari menghubungkan tabel?

  2. rake db:buat kesalahan penyandian dengan postgresql

  3. TemplateSyntaxError:Tertangkap ImportError saat merender:tidak dapat mengimpor utilitas nama

  4. Menginstal pg -v 0.17.1

  5. PSQLException:ERROR:kesalahan sintaks di tsquery