【发布时间】:2017-11-01 23:38:36
【问题描述】:
所以我正在为不和谐创建一个机器人,这里的代码会向加入服务器的人发送 PM:
client.on("guildMemberAdd", member => {
let guild = member.guild;
console.log(`${member.user.username} has joined your server`);
member.user.send('Welcome to my server!');
});
我正在尝试使用 sqlite 创建一个数据库来记录加入用户 ID 和用户名的人,这就是我所拥有的:
client.on("guildMemberAdd", member => {
let guild = member.guild;
console.log(`${member.user.username} has joined your server`);
sql.run(`UPDATE users SET userId = ${member.id} WHERE userId = ${member.id}`);
member.user.send('Welcome to my server!');
sql.get(`SELECT * FROM users WHERE userId = '${member.id}'`).then(row => {
if (!row) {
sql.run('INSERT INTO users (userId, username) VALUES (?, ?)', [member.id, 1, 0]);
} else {
sql.run(`UPDATE users SET username = ${member.user.username} WHERE userId = ${member.id}`);
}
}).catch(() => {
console.error;
sql.run('CREATE TABLE IF NOT EXISTS users (userId TEXT, username TEXT)').then(() => {
sql.run('INSERT INTO users (userId, username) VALUES (?, ?)', [member.id, 1, 0]);
});
});
});
我得到:
UnhandledPromiseRejectionWarning:未处理的承诺拒绝(拒绝 id:2):错误:SQLITE_RANGE:绑定或列索引超出范围,代码有什么问题?有人能解决吗?
【问题讨论】: