gpt4 book ai didi

javascript - 使用 Nodejs 的 mysql 模块存储 JSON

转载 作者:行者123 更新时间:2023-11-29 06:00:52 24 4
gpt4 key购买 nike

我需要在这个表的“数据”列中存储一个 JSON:

enter image description here

我试图存储一个 json 但我收到错误,可能是由于引用...

connection.connect();

var query = 'INSERT INTO Forecasts (data, createdAt, updatedAt, OrchardId) VALUES ?';


connection.query(query, [['{"id": 1}', '2017-07-06 16:08:19','2017-07-06 16:08:19',3]],function (error, results, fields) {
if (error) throw error;
console.log('The solution is: ', results[0].solution);
});

connection.end();

输出

$ npm start

revo-weather@1.0.0 start /Users/giovannimarino/Desktop/revo-weather node index.js

{"id":1} INSERT INTO Forecasts(数据、createdAt、updatedAt、OrchardId) 值(“gio”,“2017-07-06 16:08:13”,“2017-07-06 16:08:13”,3) MacBook-Pro-di-Giovanni:revo-weather giovannimarino$ npm start

revo-weather@1.0.0 start /Users/giovannimarino/Desktop/revo-weather node index.js

/Users/giovannimarino/Desktop/revo-weather/node_modules/mysql/lib/protocol/Parser.js:79 抛出错误;//重新抛出非 MySQL 错误 ^

错误:ER_PARSE_ERROR:您的 SQL 语法有误;检查 与您的 MySQL 服务器版本相对应的手册 在 ''{\"id\": 1}', '2017-07-06 16:08:19', '2017-07-06 附近使用的语法 16:08:19',第 1 行 3' 在 Query.Sequence._packetToError (/Users/giovannimarino/Desktop/revo-weather/node_modules/mysql/lib/protocol/sequences/Sequence.js:52:14) 在 Query.ErrorPacket (/Users/giovannimarino/Desktop/revo-weather/node_modules/mysql/lib/protocol/sequences/Query.js:77:18) 在 Protocol._parsePacket (/Users/giovannimarino/Desktop/revo-weather/node_modules/mysql/lib/protocol/Protocol.js:280:23) 在 Parser.write (/Users/giovannimarino/Desktop/revo-weather/node_modules/mysql/lib/protocol/Parser.js:75:12) 在 Protocol.write (/Users/giovannimarino/Desktop/revo-weather/node_modules/mysql/lib/protocol/Protocol.js:39:16) 在套接字。 (/Users/giovannimarino/Desktop/revo-weather/node_modules/mysql/lib/Connection.js:103:28) 在 emitOne (events.js:115:13) 在 Socket.emit (events.js:210:7) 在 addChunk (_stream_readable.js:252:12) 在 readableAddChunk (_stream_readable.js:239:11) ---------------------- 在 Protocol._enqueue (/Users/giovannimarino/Desktop/revo-weather/node_modules/mysql/lib/protocol/Protocol.js:141:48) 在 Connection.query (/Users/giovannimarino/Desktop/revo-weather/node_modules/mysql/lib/Connection.js:208:25) 在对象。 (/Users/giovannimarino/Desktop/revo-weather/index.js:19:12) 在 Module._compile (module.js:569:30) 在 Object.Module._extensions..js (module.js:580:10) 在 Module.load (module.js:503:32) 在 tryModuleLoad (module.js:466:12) 在 Function.Module._load (module.js:458:3) 在 Function.Module.runMain (module.js:605:10) 在启动时 (bootstrap_node.js:158:16) npm ERR!代码 ELIFECYCLE npm ERR!错误号 1 npm 错误! revo-weather@1.0.0 启动:node index.js npm 呃!退出状态 1 npm ERR!错误!在 revo-weather@1.0.0 失败 启动脚本。错误!这可能不是 npm 的问题。那里 可能是上面的额外日志输出。

npm 错误!可以在以下位置找到此运行的完整日志:npm ERR!
/Users/giovannimarino/.npm/_logs/2017-07-14T14_16_03_166Z-debug.log

最佳答案

你如何 JSON.stringify 你的 json 对象,然后持久化它。在拉回数据时,您可以再次解析它。

connection.connect();

var query = 'INSERT INTO Forecasts (data, createdAt, updatedAt, OrchardId) VALUES ?';


connection.query(query, [[JSON.stringify('{"id": 1}'), '2017-07-06 16:08:19','2017-07-06 16:08:19',3]],function (error, results, fields) {
if (error) throw error;
console.log('The solution is: ', results[0].solution);
});

connection.end();

关于javascript - 使用 Nodejs 的 mysql 模块存储 JSON,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45105248/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com