2

node/request モジュールを使用してイメージをダウンロードしています。node/mssql モジュールを使用して、SQL サーバーの varbinary フィールドにそのイメージを挿入する方法を見つけようとしています。これまでのところ、挿入ステートメントにキャストを入れて、本体 (バッファー) を文字列に変換しようとしましたが、すべて役に立ちませんでした。ストアドプロシージャを使用せずにこれを行う方法を見つけようとしています。

ありがとう!

4

1 に答える 1

1

ディスクから .png 画像ファイルを「バイナリ」として読み込み、それを「バイナリ」バッファに入れ、準備されたステートメントを使用して SQL Server DB に挿入することができました。

fs.readFile(<path-to-file>, 'binary', function(err, fileData) {
    var binBuff = new Buffer(fileData, 'binary');
    var ps = new sql.PreparedStatement(<connection>);
    ps.input('theImage', sql.VarBinary);
    ps.prepare('INSERT INTO ImageTable (BinaryImage) VALUES (@theImage)', function (err) {
        // check err
        ps.execute({theImage: binBuff}, function(err, records) {
            // check err
            ps.unprepare(function(err) {
                // check err
                // If no error, it's been inserted!
            });
        });
    });
});
于 2017-03-17T01:21:43.133 に答える