gpt4 book ai didi

mysql - 通过 Node 将 JSON-Object 传递到 MYSQL 列

转载 作者:行者123 更新时间:2023-11-29 15:49:40 25 4
gpt4 key购买 nike

目前我正在尝试用 Node 填充 MySQL 数据库。
数据存储在一个对象中,例如:

插入对象:

{"textField":"testabc","checkBox":false,"dropDown":"1"}

我的 SQL 查询:

"INSERT INTO nodetest (textField,checkBox,dropDown) VALUES('"+insertObj.textField+"','"+insertObj.checkBox*1+"','"+insertObj.dropDown+"')"

基本上我只想传递该对象并使数据库使用对象本身的正确信息填充正确的列。

不幸的是,除了 MySQL 之外,我不能使用任何其他数据库,但 mongoDB 允许类似的操作:

dbo.collection("nodeTest").insertOne(insertObj, function(err,res) {
if(err) throw err;
console.log("document inserted");
db.close();
})

是否可以使用 MySql 数据库实现类似的功能?通过脚本Mabye?

最佳答案

您可以使用sequelize对象关系映射。以下是实现结果的步骤

1.安装sequelize

npm install --save sequelize

2.安装Mysql方言

npm install --save mariadb or npm install --save mysql2 depending on your server

3.建立连接

const Sequelize = require('sequelize');

const sequelize = new Sequelize('database', 'username', 'password',
{
host: 'localhost',
dialect: // one of 'mysql' | 'mariadb' | 'postgres' | 'mssql'
});

您可以测试连接:

sequelize.authenticate().then(() => {
console.log('Connection has been established successfully.');}).catch(err => {
console.error('Unable to connect to the database:', err);});

4.为表格建模

const Model = Sequelize.Model;
class Classname extends Model {}
Classname.init({
textField: {
type: Sequelize.STRING,
allowNull: false},
checkBox: {
type: Sequelize.BOOLEAN
// allowNull defaults to true
},dropDown: {
type: Sequelize.STRING
// allowNull defaults to true
}},
{sequelize,modelName: 'modelname'
});

5.然后你就可以了

Classname.create({"textField":"testabc","checkBox":false,"dropDown":"1"}).then(data => {
console.log(data);
});

希望它能解决您的问题。

关于mysql - 通过 Node 将 JSON-Object 传递到 MYSQL 列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56835809/

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