如何使用node-mssql将二进制数据插入到sql服务器

我正在下载一个图像使用节点/请求模块,并试图找出如何将该图像插入到SQL Server varbinary字段中使用节点/ mssql模块。 到目前为止,我已经试图把一个强制转换成插入语句,转换正文(缓冲区)为一个string,都没有用。 我试图找出如何做到这一点,而不使用存储过程。

谢谢!

我已经从磁盘中读取一个.png图像文件为“二进制”,然后将其放入“二进制”缓冲区中,然后使用准备好的语句将其插入到SQL Server数据库中:

 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! }); }); }); }); 
Interesting Posts