【问题标题】:how to insert query and save json data into sql server using nodejs如何使用nodejs将查询和json数据保存到sql server
【发布时间】:2020-08-02 15:42:39
【问题描述】:
我正在尝试使用带有 nodejs 的窗口身份验证将查询插入 SQL Server。我已经完成了选择查询的获取请求。但现在我正在尝试使用插入查询的发布请求。但我无法将我的 req.body.address 传递给以下查询。地址数据有json值。
这里是我的代码
这里是我的请求数据,
sql表行,
那是错误,
【问题讨论】:
-
您应该以文本形式而不是图像形式发布。这是什么MySQL版本?如果您可以运行SHOW CREATE TABLE users; 并发布结果into your question,这将非常有帮助。
标签:
mysql
node.js
json
express
【解决方案1】:
默认情况下,您的mysql 库可能会将标准字符串转换为req.body.address。当您对 javascript 对象执行此操作时,您将获得 [object Object]:
req.body.address.toString() // "[object Object]"
对象需要使用JSON.stringify()转成字符串:
"user_address": JSON.stringify(req.body.address)
【解决方案2】:
您需要在 user_address 字段中保存为字符串。
例如:
如果你想保存为这样的地址:
user_address: `${req.body.address.street},${req.body.address.district},${req.body.address.city}`
或者
user_address: JSON.stringify(req.body.address)
无论何时你想显示你需要做的地址JSON.parse(user_address)。
简而言之,值必须是单个值。