我正在尝试在 JavaScript 中访问 COLUMN_JSON 数据,但遇到问题。我拍了一个mariadb JSON example并将其插入到表中,如下所示:
UPDATE myTable
SET myJsonColumn = COLUMN_CREATE('color', 'blue', 'size', 'XL')
WHERE 1
当我使用 mysqlworkbench 看到它时,它看起来很好:
二元 View :
0x00000000 7b 22 73 69 7a 65 22 3a 22 58 4c 22 2c 22 63 6f
0x00000010 6c 6f 72 22 3a 22 62 6c 75 65 22 7d
TextView :
{"size":"XL","color":"blue"}
但是,当数据通过sequelize进入javascript时,它看起来像这样:
console.log(数据):
3sizecolor!XL!blue
console.log(util.inspect(data)):
<Buffer 04 02 00 09 00 00 00 03 00 04 00 33 00 73 69 7a 65 63 6f 6c 6f 72 21 58 4c 21 62 6c 75 65>
JSON.stringify(数据):
{"type":"Buffer","data": [4,2,0,9,0,0,0,3,0,4,0,51,0,115,105,122,101,99,111,108,111,114,33,88,76,33,98,108,117,101]}
我不知道解释这些数据的最佳方法。 JSON.parse() 或 JSON.stringify() 似乎对我来说不能正常工作。
myJsonColumn 是 Sequelize 模型中的 BLOB 数据类型:
myJsonColumn : Sequelize.BLOB,
在 JavaScript 中将此数据解释为 JSON 结构的最佳方式是什么?
最佳答案
[sequelize.fn('COLUMN_JSON',sequelize.col('userJsonData')),'userJsonData']
关于javascript - 在jscript中访问mariadb COLUMN_JSON数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39479748/