總結一下mysql語句在node.js中的各類寫法,參考了npm網站mysql模塊給的實例。node
查詢 selectmysql
//1 db.query('select * from tuanshang_users where user_id < 10',function(err,results,fields){ //if(err) throw err; console.log( results ); if(!!results.length){ console.log('查詢到'+ results.length +'條數據'); }else{ console.log('沒有相關數據'); } }); //2 db.query('select * from tuanshang_users where user_id=?',[8],function(err,results,fields){ if(err) throw err; console.log( results ); }); //3 db.query({ sql: 'select * from tuanshang_users where user_id=? and username=?', values: [43,'ABCD'], timeout: 40000 },function(err,results,fields){ if(err) throw err; console.log( results ); }); //4 db.query({ sql: 'select * from tuanshang_users where user_id=? and username=?', timeout: 40000 },[44,'ABCDEF'],function(err,results,fields){ if(err) throw err; console.log( results ); }); //5 var userid = 44; var columns = ['username','password']; var sql = 'select ?? from ?? where user_id=?'; db.query(sql,[columns,'tuanshang_users',userid],function(err,results,fields){ if(err) throw err; console.log( results ); });
插入 insert intosql
//1 var o = {username:'cnode', password:'123456'}; db.query('insert into tuanshang_users set ?', o, function(err,result){ console.log( result ); if(result){ console.log('插入成功'); console.log( result.insertId ); }else{ console.log('插入失敗'); } }); //2 db.query('insert into tuanshang_users set ?',{username:'hello',password:'123456'}, function(err,result){ //if(err) throw err; if(result){ console.log('插入成功'); console.log( result ); }else{ console.log('插入失敗'); } }); //3 db.query({ sql: 'insert into tuanshang_users set ?', values: {username:'kankan',password:'123456'}, timeout: 40000 },function(err,result){ //if(err) throw err; console.log( result ); if( !!result ){ console.log('插入成功'); console.log( result.insertId ); }else{ console.log('插入失敗'); } }); //4 5 參考查詢select
更新 update npm
//1 db.query('update tuanshang_users set ? where user_id=?',[{username:'hello'},8],function(err,result){ //if(err) throw err; console.log(result); if(!!result && !!result.changedRows){ console.log('更新成功'); console.log( result.changedRows ); }else{ console.log('更新失敗'); } }); //2 db.query('update tuanshang_users set ? where user_id=5',{username:'hello'},function(err,result){ //if(err) throw err; console.log(result); if(!!result && !!result.changedRows){ console.log('更新成功'); console.log( result.changedRows ); }else{ console.log('更新失敗'); } }); //3 db.query({ sql: 'update tuanshang_users set ? where user_id=?', values: [{username:'hello'},8], timeout: 40000 },function(err,result){ //if(err) throw err; console.log( result ); if(!!result && !!result.changedRows){ console.log('更新成功'); console.log( result.changedRows ); }else{ console.log('更新失敗'); } }); //4 5 參考查詢select
刪除 delete 數組
//1 db.query('delete from tuanshang_users where username="hello"',function(err,result){ //if(err) throw err; console.log( result ); if(!!result && !!result.affectedRows){ console.log('刪除成功'); console.log( result.affectedRows ); }else{ console.log('刪除失敗'); } }); //2 db.query('delete from tuanshang_users where user_id=?',[10],function(err,result){ //if(err) throw err; console.log( result ); if(!!result && !!result.affectedRows){ console.log('刪除成功'); console.log( result.affectedRows ); }else{ console.log('刪除失敗'); } }); //3 db.query({ sql: 'delete from tuanshang_users where user_id=?', values: [51], timeout: 40000 },function(err,result){ //if(err) throw err; console.log( result ); if(!!result && !!result.affectedRows){ console.log('刪除成功'); console.log( result.affectedRows ); }else{ console.log('刪除失敗'); } }); //4 5 參考查詢select
查詢操做,會返回一個結果數組。若是沒有查詢數據,結果數組爲空,即數組長度爲0。網站
插入,更新,刪除操做會返回一個結果對象spa
{ fieldCount: 0, affectedRows: 0, insertId: 0, serverStatus: 2, warningCount: 0, message: '', protocol41: true, changedRows: 0 }
在插入操做後,結果對象中 insertId 返回插入的數據在表中id的位置。server
在更新操做後,結果對象中 changedRows 返回更新了多少行(表中有幾條數據中的字段值發生變化),affectedRows 返回知足where條件影響的行。對象
在刪除操做後,結果對象中 affectedRows 返回刪除了多少行。若是是0表示沒有刪除行或者沒有知足刪除條件的數據行。get