저는 node-mysql2를 사용하고 MySQL에 문자열 인코딩 된 바이너리 데이터를 저장하고 있습니다. 열의 유형은 binary(16)
입니다. MySQL의에 저장된 데이터는 예를 들어, 손상되고 :MySQL에 저장된 바이너리 데이터가 노드와 함께 손상되었습니다.
NodeJS output: 47 23 43 14 ed 86 14 dc 12 f3 b8 6c dc 31 fb fa
MySQL HEX() : 47 23 43 14 c3 ad c2 86 14 c3 9c 12 c3 b3 c2 b8
코드 :
var binaryString = randomBinaryString();
db.sqlQuery("INSERT INTO test(binaryString) VALUES(" + db.escape(binaryString) + ")");
console.log(new Buffer(binaryString, 'binary').toString('hex'));
function randomBinaryString(){
var str = "";
for(var i = 0; i < 16; i++){
str += String.fromCharCode(Math.floor(Math.random()*256));
}
return str;
}
실제로 바이너리 데이터 (바이트가되는 각 문자를) 인코딩 된 문자열 노드를 사용하여 MySQL의에 저장하는 방법 -mysql2?