Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何正确使用nodejs和javascript在mysql中存储blob数据_Javascript_Mysql_Node.js_Blob - Fatal编程技术网

如何正确使用nodejs和javascript在mysql中存储blob数据

如何正确使用nodejs和javascript在mysql中存储blob数据,javascript,mysql,node.js,blob,Javascript,Mysql,Node.js,Blob,我在javascript中有一个从0到255的整数数组 var arr = [249, 13, 105, 170]; 并且需要按照以下规则将此数据存储在mysql数据库中: 1个数字=1个字节 因此,如果数组长度等于4,那么mysql DB中blob数据的大小必须为4字节。对于小于128的数字,它可以正常工作 var res = ""; for(var i = 0; i < arr.length; i++) { res += String.fromCharCode(a

我在javascript中有一个从0到255的整数数组

var arr = [249, 13, 105, 170];
并且需要按照以下规则将此数据存储在mysql数据库中:

  • 1个数字=1个字节
因此,如果数组长度等于4,那么mysql DB中blob数据的大小必须为4字节。对于小于128的数字,它可以正常工作

var res = "";    
for(var i = 0; i < arr.length; i++) {
    res += String.fromCharCode(arr[i]);
}

你有什么想法吗?

我已经使用内置的mysqlCHAR函数实现了这一点:

var arr = [249, 13, 105, 170];
var sql = "INSERT INTO b SET `data` = CHAR( " + arr + " )";

client.query(sql);

其中,数据是blob数据

对于准备好的语句,您能告诉我们同样的情况吗
var Client = require('mysql').Client,
    client = new Client();
client.user = DB_USER;
client.password = DB_PASS;
client.host = DB_HOST;
client.connect(function(error, results) {
    if(error) {
        client.end();
        return;
    }
    client.query('USE ' + DB_SCHEME, function(error, results) {
        if(error) {
            client.end();
            return;
        }

        var sql = "INSERT INTO b SET `data` = ?";
        var values = [buf];

        client.query(sql, values,
            function(error, results) {
                if(error) {
                    return;
                }
                return;
            }
        );
    });
});
var arr = [249, 13, 105, 170];
var sql = "INSERT INTO b SET `data` = CHAR( " + arr + " )";

client.query(sql);