【问题标题】:encoding and save images编码和保存图像
【发布时间】:2015-04-23 11:59:38
【问题描述】:

我是 node.js 的初学者,想请教一下。使用数据库中的选择,我得到所需的数据(ID、建筑物、楼层、地图)。该地图以 jpg 格式存储为字节数组 0x89504E470D0A1A0A0000000D4948...。我保存到一个新的数据库 ID、建筑物、楼层和缩减地图(其中质量通过 https://www.npmjs.com/package/images 降低),现在是 Unicode 编码(http://puu.sh/g6UZ2/90408c7b12.png)。您能否告诉我如何将缩小大小的映射转换为字节数组,然后将其作为 BLOB 存储在数据库中。谢谢你,对不起我的英语

var myQueryMaps2 = ' SELECT ' +
'id, budova, patro, mapa ' +
'FROM dbo.cis_mapyBudov';

app.get('/originalMaps', function (req, res) {

var request = new sql.Request(connection);
request.query(' DELETE FROM dbo.cis_mapyNewBudov', function (err) {
    if (err) {
        console.log(err);
    }
});
request.query(myQueryMaps2, function (err, rows, recordset) {
    if (!err && res.statusCode === 200) {
        for (var i = 0; i < rows.length; i++) {

            var insertSQL = "INSERT INTO dbo.cis_mapyNewBudov (id, budova, patro, mapa) VALUES ('" + rows[i].id +
                "', '" + rows[i].budova + "', '" + rows[i].patro + "', '" + images(rows[i].mapa).toBuffer('jpg', {quality: 50}) +
                "')";
            request.query(insertSQL, function (err) {
                if (err)
                    console.log(err);
                else
                    console.log('save');
            });
        }
    } else {
        console.log('error original maps', err);
        throw new Error('Can not download original maps');
    }
});

});

【问题讨论】:

    标签: node.js image-processing node-mssql


    【解决方案1】:

    使用输入参数,将值连接到 TSQL 中几乎总是一个坏主意。

    var request = new sql.Request(connection);
    request.input('id', rows[i].id);
    request.input('budova', rows[i].budova);
    request.input('patro', rows[i].patro);
    request.input('mapa', sql.VarBinary(MAX), images(rows[i].mapa).toBuffer('jpg', {quality: 50}));
    request.query('INSERT INTO dbo.cis_mapyNewBudov (id, budova, patro, mapa) VALUES (@id, @budova, @patro, @mapa)', function (err) {
        // ...
    });
    

    提示:始终为每个查询创建一个new Request。驱动程序就是这样设计的。重复使用 Request 对象可能会导致意外行为。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-09-18
      • 2011-12-03
      • 2019-02-08
      • 1970-01-01
      • 1970-01-01
      • 2014-09-22
      • 1970-01-01
      相关资源
      最近更新 更多