gpt4 book ai didi

javascript - 在 Node.js 中进行动态查询的方法

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

我试图弄清楚如何使用node-mysql在node.js中进行动态查询。插入和更新哪些表和字段取决于用户对 data 对象的请求。我想过创建一个模块来存储如下所示的不同查询,但没有成功。它给了我这个错误:

TypeError: Object function (){
var likes = 'INSERT IGNORE INTO item (id,like_type) VALUES(?,?)';
return likes;
} has no method 'replace'

app.js

 var queries = require('./queries');
.....

socket.on("like",function(data){
var table_file = data[0].table;
var d = data[1];
connection.query(queries[table_file]
,[d.id,d.like_type],function(err,rows,fields){
if(err){ throw err;}
console.log(rows);
});

查询.js:

module.exports = {
item_like:function(){
var likes = 'INSERT IGNORE INTO item (id,like_type) VALUES(?,?)';
return likes;
},
people:function(){
var likes = 'INSERT IGNORE INTO people (id,like_type) VALUES(?,?)';
return likes;
}
}

这是发送到套接字的数据对象:

data object: {table:item_like},{id:1,like_type:1};

最佳答案

queries.js 中的导出更改为 SQL 字符串而不是函数,因为这就是您当前处理它们的方式:

module.exports = {
item_like: 'INSERT IGNORE INTO item (id,like_type) VALUES(?,?)',
people: 'INSERT IGNORE INTO people (id,like_type) VALUES(?,?)'
}

关于javascript - 在 Node.js 中进行动态查询的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27741836/

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