成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

Node 連接mysql數(shù)據(jù)庫

qujian / 1435人閱讀

摘要:地址所以下面是連接連接使用的內(nèi)容作者依舊在維護(hù)安裝地址地址文檔地址查看一些文檔的時(shí)候需要在這里查看連接數(shù)據(jù)庫由于本地已經(jīng)有了。

JXcore作者已經(jīng)不維護(hù)了。
github地址 https://github.com/jxcore/jxcore
所以下面是Node.js連接Mysql
Node.js 連接Mysql
使用的內(nèi)容作者依舊在維護(hù)

安裝
PS C:UsersmingmDesktop	est> npm install mysql --save
npm WARN saveError ENOENT: no such file or directory, open "C:UsersmingmDesktop	estpackage.json"
npm WARN enoent ENOENT: no such file or directory, open "C:UsersmingmDesktop	estpackage.json"
npm WARN test No description
npm WARN test No repository field.
npm WARN test No README data
npm WARN test No license field.

+ [email protected]
updated 1 package and audited 296 packages in 2.366s
found 0 vulnerabilities

PS C:UsersmingmDesktop	est>

npm地址 https://www.npmjs.com/package...
github 地址 https://github.com/mysqljs/mysql
文檔地址 https://www.npmjs.com/package... 查看一些文檔的時(shí)候需要在這里查看

連接數(shù)據(jù)庫

由于本地已經(jīng)有mysql了。

PS C:UsersmingmDesktop	est> node test.js
The solution is: 2
var mysql = require("mysql");
var connection = mysql.createConnection({
    host: "student.iming.info",    // 連接的服務(wù)器
    user: "root",    // 用戶名
    password: "********",    // 用戶密碼
    database: "ming"    // 選擇的庫
});

connection.connect();    // 創(chuàng)建一個(gè)mysql的線程

connection.query("SELECT 1 + 1 AS solution", (err, results, fields) => {
    if (err) {
        throw  err;
    };

    console.log("The solution is:", results[0].solution);    // 返回第一條記錄的solution列的內(nèi)容
});

好啦。這就完成了一次連接,使用的是npm下載的mysql模塊,使用的是c++語言編寫的

數(shù)據(jù)庫操作
PS C:UsersmingmDesktop	est> node test.js
------------SELECT-------------
[ RowDataPacket {
    id: 1,
    name: "Google",
    url: "https://www.google.cm/",
    alexa: 1,
    country: "USA" },
  RowDataPacket {
    id: 2,
    name: "淘寶",
    url: "https://www.taobao.com/",
    alexa: 13,
    country: "CN" },
  RowDataPacket {
    id: 3,
    name: "微博",
    url: "http://weibo.com/",
    alexa: 20,
    country: "CN" },
  RowDataPacket {
    id: 5,
    name: "Facebook",
    url: "https://www.facebook.com/",
    alexa: 3,
    country: "USA" } ]
--------------------------------
var mysql = require("mysql");
var connection = mysql.createConnection({
    host: "student.iming.info",    // 連接的服務(wù)器
    user: "root",    // 用戶名
    password: "******************",    // 用戶密碼
    database: "ming"    // 選擇的庫
});

connection.connect();    // 創(chuàng)建一個(gè)mysql的線程

// 推薦查詢語句使用大寫。方便分辨和后期的維護(hù)
var sql = "SELECT * FROM websites";    // sql命令
connection.query(sql, (err, results, fields) => {    // results 為查詢的結(jié)果 fields 為返回的信息
    if (err) {
        console.log("[SELECT ERROR] -", err.message);
        return;
    };

    console.log("------------SELECT-------------");    
    console.log(results);    // 輸出查詢的結(jié)果
    console.log("--------------------------------");
});

下面該是數(shù)據(jù)庫的原子操作了。即CULD

插入數(shù)據(jù)
PS C:UsersmingmDesktop	est> node test.js
------------------INSERT--------------------------
INSERT ID OkPacket {
  fieldCount: 0,
  affectedRows: 1,
  insertId: 6,
  serverStatus: 2,
  warningCount: 0,
  message: "",
  protocol41: true,
  changedRows: 0 }
-------------------------------------------------


PS C:UsersmingmDesktop	est>
var mysql = require("mysql");
var connection = mysql.createConnection({
    host: "student.iming.info",    // 連接的服務(wù)器
    user: "root",    // 用戶名
    password: "*******************",    // 用戶密碼
    database: "ming"    // 選擇的庫
});

connection.connect();    // 創(chuàng)建一個(gè)mysql的線程

var addSql = "INSERT INTO websites(id, name, url, alexa, country) VALUES(0, ?, ?, ?, ?)"; // 創(chuàng)建一個(gè)通用的sql,并預(yù)留出填補(bǔ)的空位
var addSqlParams = ["mySoul", "https://www.iming.info", "0000000", "CN"];

connection.query(addSql, addSqlParams, (err, result) => {
    if(err){
        console.log("[INSERT ERROR] -", err.message);
        return;
    }

    console.log("------------------INSERT--------------------------")
    console.log("INSERT ID", result);
    console.log("-------------------------------------------------

");
});

登陸數(shù)據(jù)庫查看

mysql> select * from websites;
+----+----------+---------------------------+-------+---------+
| id | name     | url                       | alexa | country |
+----+----------+---------------------------+-------+---------+
|  1 | Google   | https://www.google.cm/    |     1 | USA     |
|  2 | 淘寶     | https://www.taobao.com/   |    13 | CN      |
|  3 | 微博     | http://weibo.com/         |    20 | CN      |
|  5 | Facebook | https://www.facebook.com/ |     3 | USA     |
|  6 | mySoul   | https://www.iming.info    |     0 | CN      |
+----+----------+---------------------------+-------+---------+
5 rows in set (0.02 sec)

mysql>

很明顯已經(jīng)插入完成

親,如果數(shù)據(jù)庫ID設(shè)置了自動遞增,即使用了AUTO_INCREMENT,建議使用自增,因?yàn)閿?shù)據(jù)庫索引是B+樹的加快查詢速度。所以一般都設(shè)置自增序列

關(guān)于JSON 因?yàn)閿?shù)據(jù)通信是使用JSON的,所以兩個(gè)方法,一個(gè)JSON轉(zhuǎn)對象 JSON.parse
 對象轉(zhuǎn)JSON JSON.stringify
在加上一個(gè)node的框架Express,即可完成和瀏覽器的交互,這樣就完成一個(gè)web服務(wù)器的搭建

刪除數(shù)據(jù)
var mysql = require("mysql");
var connection = mysql.createConnection({
    host: "student.iming.info",    // 連接的服務(wù)器
    user: "root",    // 用戶名
    password: "*********************",    // 用戶密碼
    database: "ming"    // 選擇的庫
});

connection.connect();    // 創(chuàng)建一個(gè)mysql的線程

var delSql = "DELETE FROM websites WHERE id=6";
connection.query(delSql, (err, result) => {
    if(err) {
        console.log("[DELETE ERROR] -", err.message);
        return;
    }

    console.log("------------DELETE------------------");
    console.log("DELETE affectedRows", result);
    console.log("------------------------------------");
})

connection.end();
PS C:UsersmingmDesktop	est> node test.js
------------DELETE------------------
DELETE affectedRows OkPacket {
  fieldCount: 0,
  affectedRows: 1,
  insertId: 0,
  serverStatus: 2,
  warningCount: 0,
  message: "",
  protocol41: true,
  changedRows: 0 }
------------------------------------
PS C:UsersmingmDesktop	est>
博客

www.iming.info

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/96450.html

相關(guān)文章

  • Node連接MySQL并封裝其增刪查改

    摘要:連接說到,可能大家會想到作為數(shù)據(jù)庫,這里將會介紹與的連接,并分享了封裝好的實(shí)例代碼,在項(xiàng)目開發(fā)中可直接使用。操作查詢添加刪除更新結(jié)束連接這兩種都行,第二種是強(qiáng)制結(jié)束。 showImg(https://segmentfault.com/img/bVbaIlR?w=900&h=500); Node連接Mysql 說到node,可能大家會想到MOngoDB作為數(shù)據(jù)庫,這里將會介紹node與m...

    Maxiye 評論0 收藏0
  • Node連接MySQL并封裝其增刪查改

    摘要:連接說到,可能大家會想到作為數(shù)據(jù)庫,這里將會介紹與的連接,并分享了封裝好的實(shí)例代碼,在項(xiàng)目開發(fā)中可直接使用。操作查詢添加刪除更新結(jié)束連接這兩種都行,第二種是強(qiáng)制結(jié)束。 showImg(https://segmentfault.com/img/bVbaIlR?w=900&h=500); Node連接Mysql 說到node,可能大家會想到MOngoDB作為數(shù)據(jù)庫,這里將會介紹node與m...

    lixiang 評論0 收藏0

發(fā)表評論

0條評論

qujian

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<