nodejs 连接mysql,表不存在 网上找了很多资料,身边的书也翻过了还未解决


搞了快一个晚上了,但是不知道怎么解决。 图片描述

图片描述

node.js error mysql

火星丿小朋友 9 years, 10 months ago

表没创建成功啊

黑猫即是正义 answered 9 years, 10 months ago

没看到create database呀? 你这是在哪个db下建表?

HELLO answered 9 years, 10 months ago

异步错误,表还未创建就执行插入数据

Kuma欧吉桑 answered 9 years, 10 months ago

题主可能不太了解js的异步吧?从php等语言过来的人,可能很少接触异步操作,你只要把 insertData(); 这一行放到 connection.query(); 里第二个参数的方法里面就可以了。具体如下


 var sql = 'create table if not exists users(id INT(50) not null auto_increment primary key);';//因为你创建表,但是一个字段都没有,也会报错的,所以把你的sql改了。

connention.query(sql,function(err){
    if (err) throw err;
    insertData(); //把插入数据的方法放到这里执行就ok了。否则,按照你原来的写法,insertData()会在创建表之前执行,所以才会提示说表不存在
});

以上代码如果你是直接复制进去的,应该还会报错,因为创建表我只帮你写了一个字段,剩余字段你自己加吧

另外,你自己搜一下异步是啥吧,我找到一篇还行的文章 http://www.ruanyifeng.com/blog/2012/12/asynchronous%EF%BC%BFjavascript...

贝亚娜斗神 answered 9 years, 10 months ago

Your Answer