學習NodeJS連接MySql(二)

在Node中連接MySql的方法

在Node中連接MySql有兩種方法,一種是用Pool,一種是用Connectionmysql

首先放出個代碼模板sql

/** 數據庫查詢
 * 一、連接數據庫
 * 二、獲取連接,鏈接可能失敗
 */
var mysql = require('mysql');
// console.log(mysql);

//這是後端連接數據庫的線
//                          數據庫地址:本地    用戶名:root    密碼:123456    數據庫名:20190603    -port(端口):能夠改
var pool = mysql.createPool({'host':'localhost','user':'root','password':'123456' ,'database':'20190605'}); 
// console.log(pool);

// pool.connect();

//異步連接數據庫
//獲取連接,可能失敗,在connection.query 中寫sql 語句
pool.getConnection(function(err, connection){
    if(err) {
        console.log('鏈接失敗'+err);
    }else {
        //                關鍵字    關鍵字  表名     處理方法
        connection.query('SELECT * FROM `user`;', function(err, data){
            if(err) {
                console.log(err);
            }else {
                console.log(data);
                connection.end();
            }
        })
    }
})

Connection方法

var mysql      = require('mysql');
var connection = mysql.createConnection({
  host     : 'localhost',
  user     : 'root',
  password : '123456',
  database : 'test'
});
 
connection.connect();
 
connection.query('SELECT 1 + 1 AS solution', function (error, results, fields) {
  if (error) throw error;
  console.log('The solution is: ', results[0].solution);
});
MySql的增刪改查

增:

INSERT INTO `表名` (`key`,`key2`,...) VALUES("value","value2",...);
這裏要注意的是,表名和key值括起來的不是單引號,而是右上角esc鍵下方的 `,須要在英文輸入下輸入數據庫


刪:

DELETE FROM `表名`
注意:若是直接輸入這行的話是刪除整個數據庫,若是一不當心真的刪除了就跑路吧
那麼怎麼才能精準刪除咱們所想刪的呢 - where關鍵字可以幫助咱們精準定位。後端

DELETE FROM `表名` WHERE 'key'='value'
假設key值是ID,user,passvalue值是0,user,123那麼刪除這行用其特定的惟一的其餘行數據沒有的值來作篩選條件就能夠了,假設ID爲0是其餘行數據沒有的惟一存在,那麼
DELETE FROM `表名` WHERE `ID`='0';就能夠刪除這一行數據了異步


改:

UPDATE `表名` SET key='new value' WHERE key='value'
一樣假設其改變的值有惟一的key值,key=ID,value=0;
`UPDATE `表名` SET ID='1' WHERE ID='0'
這樣就將ID從0改成1了。ui


查:

SELECT * FROM `表名`
星號的意思是全部,這句話意思爲查詢全部key,也就是把表單全部keyvalue打印出來
一樣的,利用關鍵字WHERE能夠實現精準查詢。
SELECT user,pass FROM `user
這句話的意思是想查詢user與pass的數據,想用多個key作查詢條件增長特定性的話多個key中間用逗號分開
SELECT user,pass FROM `user` WHERE user="bill"
想查詢user與pass,而且user的值爲bill的數據code

固然,sql語句支持一些運算符,能夠查詢某個範圍的值get

SELECT * FROM `user` WHERE `password`>100
SELECT * FROM `user` WHERE `password`!=0

‘與’子句(&&) => AND

AND 和 與JS的(&&)符號同樣 全部AND 後的條件都必須知足
SELECT key,key2 FROM `tabName` WHERE key=" " AND key2=""io

‘或’子句(||) => OR

OR 和 JS的(||)符號同樣 全部OR 後的條件無關緊要
SELECT key,key2 FROM `tabName` WHERE key="" OR key2=""console

相關文章
相關標籤/搜索