gpt4 book ai didi

javascript - sqlite3 - 插入 - javascript 对象作为值

转载 作者:行者123 更新时间:2023-11-28 17:44:51 24 4
gpt4 key购买 nike

使用 javascript 对象作为 sqlite3 插入的值的最简单的解决方案是什么?以下代码不起作用。

const values = {
name: 'John',
age: 34,
language: 'english'
};

db.run('INSERT INTO tablename VALUES (?)', values, (err) => {
if (err) {
console.log(err);
} else {
console.log('success');
}
});

最佳答案

首先你需要正确编写SQL。要插入列姓名、年龄、语言,你需要像这样编写 SQL:

INSERT INTO tablename (name, age, language) VALUES (?, ?, ?)

并将 3 列的值作为参数传递。

db.run('INSERT INTO tablename (name, age, language) VALUES (?, ?, ?)', [values['name'], values['age'], values['language']]), (err) => { ... });

或者,如果 JavaScript 对象中的属性名称直接对应于列名称,那么您可以动态生成正确的 SQL 字符串以获得更大的灵 active :

const cols = Object.keys(values).join(", ");
const placeholders = Object.keys(values).fill('?').join(", ");
db.run('INSERT INTO tablename (' + cols + ') VALUES (' + placeholders + ')', Object.values(values)), (err) => { ... });

关于javascript - sqlite3 - 插入 - javascript 对象作为值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46999106/

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