如何使用Node.js中的MySQL查询更新MySQL数据库中的JSON记录
How to update JSON record in MySQL database using MySQL query in Node.js?
我得到的JSON结构类似于这个问题:
var data = {
type: "binary",
choices: [
{
choice: "No",
answers: 18
},
{
choice: "Yes",
answers: 11
}
],
tags: {
2851: "road",
8685: "had",
10978: "heard"
}
};
在回答同一个问题时,我发现了使用Node.js的MySQL查询插入json记录。
是的,我可以通过获取整个记录来更新此记录,更新记录并用更新的记录替换旧记录。
但我的问题是"我可以在不下载完整json的情况下更新数据库中的这些json记录,并基于json中的一个密钥更新这些记录吗?"
注意:这只是演示目的:如果我的验证名称是jsonData
"Update tableName set jsonData.choices.answers = 20 where data.choices.choice = 18 and id = 1";
希望您理解我的场景,即基于一个键更新JSON记录一个值。
任何概念性的建议都将受到赞赏,如果有演示代码,那将非常有帮助。
$a = json_decode($data);
"Update tableName set".$a->col1." =20......."
PHP的json_decode函数获取一个json字符串,并将其转换为PHP变量。通常,JSON数据将表示JavaScriptjson_decode将转换为PHP的数组或对象文字数组或对象。
http://www.dyn-web.com/tutorials/php-js/json/decode.php
我知道我在解决一个长期悬而未决的问题,但可以肯定的是,MySQL的JSON函数非常简单。
UPDATE tableName
SET jsonData = JSON_SET(jsonData, '$.choices.answers', 20)
WHERE data->'$.choices.choice' = 18
AND id = 1;
阅读我使用MySQL作为JSON存储的最佳实践。
相关文章:
- 将地理编码结果转换为php变量以发布到mysql数据库
- 从MySQL数据库中获取输入数据需要两次页面刷新
- 如何使用PHP将javascript变量添加到mysql数据库中
- 在javascript中跳过周六和周日,并向mysql数据库中添加不重复的条目
- 当select标记触发onChange事件时,从mysql数据库加载html表
- 如何使用mysql数据库在node.js中登录API
- 如何比较两个MySql数据库
- 我应该如何使用node.js和导出来调用mysql数据库
- 输入框值将保存到 MySQL 数据库
- 我的地图数据's不会使用php存储在mysql数据库中
- 将Laravel5.0中的谷歌图表与mysql数据库中的数据集成
- 将本地MySQL数据库与PHP&谷歌地图上的JavaScript
- 尝试将js中的字符串写入mySql数据库时获取%%
- 当用户键入一封信时,如何使用ajax自动完成来显示MySQL数据库中的值
- 音差.无法访问远程 mysql 数据库
- 使用自动完成文本框从mysql数据库获取表记录并显示在文本字段中
- 复选框(JSP PAGE)并插入到mysql数据库
- 使用 Node-MYSQL 检索 MYSQl 数据库中最新的 X 个条目量?节点.js
- 如何从javascript访问MySql数据库的数据
- 如何在 JavaScript 函数中使用 MySQL 数据库数据