Düğüm sonrası modülü kullanarak küçük bir dosyayı postgres'e (db) kaydetmeye çalışıyorum. Bunu yapmak için bytea veri türünü kullanmam gerektiğini anlıyorum. db dosya sütununPost-postgres kullanarak postgres'te bir dosyanın saklanması
fs.readFile path, (err, data) ->
client.query 'UPDATE file_table SET file = $1 WHERE key = $2', [data, key], (e, result) ->
....
içindekiler ise: \ x ve hiçbir şey saklanır ben gibi bazı şeyi yaptığında yaşıyorum sorundur. Veri arabelleğini hex.e. data.toString ('hex') olarak değiştirirseniz, dosya saklanır ancak dosyayı geri okurken tüm formatlar kaybolur.
Post-postgres modülünü kullanarak bir dosyayı postgres içine saklamanın doğru yolu nedir?
burada yardımcı takılan alır verileri incelemek ne olacak veri psql kullanarak temel. Orada doğru olup olmadığını gör. Sorun, verilerin doğru bir şekilde yerleştirilmesiyle mi yoksa tekrar okunmasıyla mı ilgili olduğunu size söyleyecektir. Ayrıca Pg versiyonundan bahsetmelisiniz; varsayılan "bytea" biçimi, 9.0'da "escape" dan 'hex' olarak değiştirildi. –
Ne 'node-postgres' sürümünü kullanıyorsunuz? Yaklaşık bir yıl önce bytea'yı destekliyor gibi görünüyor (https://github.com/brianc/node-postgres/pull/38) böylece sadece bir arabelleğe geçebilmelisiniz. –
Yorumlar için teşekkürler. Node-postgres v. 0.8.6 kullanıyorum ve Heroku'nun kullandığı postgres sürümü. Muhtemelen 9. bir şey. Db'ye baktım ve veri sütunundaki tek veri bir \ x. Alanı bir metin alanına dönüştürerek ve dosyayı bir hex dizesi olarak saklayarak bir iş buldum. Bunun iyi bir fikir olduğunu düşünmüyorum. – Clive