4 个回答

题主可能不太了解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...

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

新手上路,请多包涵

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

表没创建成功啊

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题