Javascript 在节点js中查询Mysql
我就是不想让它工作!一些想法 我不知道如何处理57号线(现有线路的常数行){ 如果你能帮忙,谢谢:) 我从中得到的错误是Javascript 在节点js中查询Mysql,javascript,mysql,node.js,Javascript,Mysql,Node.js,我就是不想让它工作!一些想法 我不知道如何处理57号线(现有线路的常数行){ 如果你能帮忙,谢谢:) 我从中得到的错误是 看起来existing是不可iterable的。请在for循环的前面添加console.log(existing)?错误消息似乎很简单:existing是不可iterable的。这意味着名为existing的变量不是数组,因此,节点不能for(const row of existing)和崩溃。您是否尝试控制台.log(现有)并查看它的输出?另外,您还有一堆额外的});})将
看起来
existing
是不可iterable的。请在for循环的前面添加console.log(existing)
?错误消息似乎很简单:existing是不可iterable的。这意味着名为existing
的变量不是数组,因此,节点不能for(const row of existing)
和崩溃。您是否尝试控制台.log(现有)
并查看它的输出?另外,您还有一堆额外的});})代码>将您的wait
异步块括在try/catch
块中我认为第57行应该是的(现有中的const行){
@wasanga7…但是现有的
仍然是不可编辑的,所以这不会解决任何问题。而且现有的
行的语法是完全正确的。它直接迭代数组的元素,而in
迭代每个元素的索引。
Connected!
Database created
(node:8692) UnhandledPromiseRejectionWarning: TypeError: existing is not iterable
at insertUpdate (C:\Users\sondr\Desktop\koder\Ip_søk_syslog\app.js:57:23)
at process._tickCallback (internal/process/next_tick.js:68:7)
(node:8692) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 1)
(node:8692) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
Using syslog
Tabel syslog_data created
^C
C:\Users\sondr\Desktop\koder\Ip_søk_syslog>
async function insertUpdate() {
// hent alle IPer listet i databasen
const existing = await con.query(`SELECT ip, count FROM syslog_data`);
// gå gjennom IP etter IP
for (const key in tracker) {
let exists = false;
// gå gjennom eksisterende IPer fra databasen for hver gang (finnes bedre løsninger enn loop)
for (const row of existing) {
// sjekk om IP matcher IP som skal legges til/oppdateres, og legg til eller øk "count"
if (row.ip !== key) continue;
con.query(`UPDATE syslog_data SET count=${++row.count} WHERE ip="${row.ip}"`);
exists = true;
break;
}
// hopp til neste IP hvis den gjeldende eksisterer
if (exists) continue;
// legg til IP i databasen, og sett "count" verdien
await con.query(`INSERT INTO syslog_data (ip, count) VALUES ("${key}", "${tracker[key]}")`);
}
}
insertUpdate();
});
}
});