繁体   English   中英

如何在节点中将 MongoDB 查询转换为 Mysql

[英]How To Convert MongoDB Query To Mysql In Node

我想在我的应用程序中将 mongoDB 转换为 mysql。 我的应用程序是由 node.js 构建的,但是“创建表”查询存在问题。 这是我的代码。

var setting = new MongoCon.Schema({
site: {
    type: Object,
    default: {
        someData: {
            lengthMsgBc: 250,
            likeUpPic: 10,
        },
        title: "",
        walllikes: {
            likeUpPic: 10,
        },
    },
},
dro3: {
    type: Array,
    default: [
        "1604251747557.gif",
        "1604251842627.gif",
        "1604251846871.gif",
    ],
},
});

这是转换为 sql 的查询。

mysqlCon.query('CREATE TABLE al3ochek_settings (_id INT NOT NULL AUTO_INCREMENT, site VARCHAR(255) DEFAULT "{"someData":{"lengthMsgBc":250,"likeUpPic":10},"title":"","walllikes":{"likeUpPic":10}}", dro3 VARCHAR(255) DEFAULT "["1604251747557.gif","1604251842627.gif","1604251846871.gif"]", PRIMARY KEY (_id) )', err => {
if (err) throw err;
    console.log("Table al3ochek_settings created!")
})

此 SQL 查询有错误。 如果我执行 JSON.stringify 将 object 保存到“站点”列。 它返回一个错误。 因为这个字符串。

"{"  "["

我该如何解决? 如果您有解决方案,请帮助我,我将不胜感激。

您应该为查询使用不同类型的引号,因为您同时使用了单引号和双引号,您可以将整个查询放在反引号之间,如下所示:

`CREATE TABLE al3ochek_settings (_id INT NOT NULL AUTO_INCREMENT, site VARCHAR(255) DEFAULT '{"someData":{"lengthMsgBc":250,"likeUpPic":10},"title":"","walllikes":{"likeUpPic":10}}", dro3 VARCHAR(255) DEFAULT "["1604251747557.gif","1604251842627.gif","1604251846871.gif"]', PRIMARY KEY (_id) )`

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM