9

データベースにデータがない場合にデータを挿入するだけなので、Select SQL のコールバック関数に Insert SQL を挿入しましたが、次のようなエラーが発生しました。

{ [エラー: 終了を呼び出した後、クエリをキューに追加できません。] コード: 'PROTOCOL_ENQUEUE_AFTER_QUIT', 致命的: false }

私のコードスニペットはここにあります:

db.query('SELECT count(*) as Resultcount FROM tablename WHERE email = ? and password = ?', [post.email, post.password], function(error, result){
    if (result[0].Resultcount == 0){
        var query2 = db.query('INSERT INTO tablename SET ?', [post], function(err, result) {
            if(err){
              console.log(err);
           }
             console.log(result);
          });
    }
    else{
        console.log('have data already');
    }
});

誰かアドバイスをくれませんか?ありがとう

- - アップデート - -

実際、select SQL のコールバック関数は匿名関数ではありません。db.end() に関する私のコード スニペットは次のようになります。

var QueryResults = new queryResultFuntion(Back_results);

    db.query('SELECT count(*) as Resultcount FROM tablename WHERE email = ? and password = ?', [post.email, post.password], QueryResults.queryResult );


    db.end();
4

1 に答える 1