初步使用Node連接Mysql數(shù)據(jù)庫
來源:易賢網(wǎng) 閱讀:739 次 日期:2016-08-02 16:08:04
溫馨提示:易賢網(wǎng)小編為您整理了“初步使用Node連接Mysql數(shù)據(jù)庫”,方便廣大網(wǎng)友查閱!

使用Node做Web頁面開發(fā),基本上是連接非關(guān)系型數(shù)據(jù)庫mongodb,而這里我還是先嘗試連接了一下mysql數(shù)據(jù)庫,因?yàn)橄鄬?duì)于mysql來說mongodb過于生疏,想著快速出來頁面,所以選擇相對(duì)熟悉一些的mysql。

1. 安裝mysql

下載MySQL :MySQL Downloads,并進(jìn)行安裝。安裝完,會(huì)引導(dǎo)你對(duì)數(shù)據(jù)庫進(jìn)行配置,設(shè)置root密碼以及創(chuàng)建普通用戶以及密碼。

2. 安裝Node-mysql

通過npm安裝mysql的軟件包,通過它方便快速調(diào)用函數(shù)連接mysql數(shù)據(jù)庫。進(jìn)入項(xiàng)目文件夾,執(zhí)行npm install mysql --save就行了。

安裝完,在項(xiàng)目文件夾的node_modules目錄下會(huì)生成mysql的目錄。

3. 查看readme文檔

進(jìn)入mysql目錄中,查看README文檔,這步很重要,不要到處百度Google搜索怎么用,因?yàn)橛捎诎姹镜牟灰粯?,也許你得到的答案并不能使你成功連接數(shù)據(jù)庫。畢竟Node發(fā)展如此之快。

如果你認(rèn)真讀了README文檔,接下來的步驟就不用再看了,避免由于版本不一致而誤導(dǎo)你。

4. 連接mysql數(shù)據(jù)庫

進(jìn)入項(xiàng)目文檔,新建TestMysql.js示例,編寫如下代碼:

var mysql   = require('mysql');

var connection = mysql.createConnection({

 host   : 'localhost',

 user   : 'me',

 password : 'secret',

 database : 'my_db'

});

connection.connect();

connection.query('SELECT 1 + 1 AS solution', function(err, rows, fields) {

 if (err) throw err;

 console.log('The solution is: ', rows[0].solution);

});

connection.end();

連接基本參數(shù)

1.host 主機(jī)名,localhost代表本地

2.user Mysql用戶

3.password 密碼

4.database 連接的數(shù)據(jù)庫

client.connect()連接數(shù)據(jù)庫

client.query()執(zhí)行SQL語句

client.end()關(guān)閉連接。

然后通過node TestMysql.js執(zhí)行程序,確保你在執(zhí)行之前已經(jīng)啟動(dòng)了Mysql服務(wù)。

5. 增刪改查

使用數(shù)據(jù)庫無外乎增刪改查,下面示例可能會(huì)對(duì)你有些幫助。

var mysql   = require('mysql');

var connection = mysql.createConnection({

 host   : 'localhost',

 user   : 'me',

 password : 'secret',

 database : 'my_db'

});

connection.connect();

// 增加記錄

client.query('insert into test (username ,password) values ("lupeng" , "123456")');

// 刪除記錄

client.query('delete from test where username = "lupeng"');

// 修改記錄

client.query('update test set username = "pengloo53" where username = "lupeng"');

// 查詢記錄

client.query("select * from test" , function selectTable(err, rows, fields){

 if (err){

  throw err;

 }

 if (rows){

  for(var i = 0 ; i < rows.length ; i++){

   console.log("%d\t%s\t%s", rows[i].id,rows[i].username,rows[i].password);

  }

 }

});

connection.end();

到此,Mysql數(shù)據(jù)庫的初步連接就告一段落了,接下來就可以在Node項(xiàng)目中自行發(fā)揮了。

更多信息請(qǐng)查看網(wǎng)絡(luò)編程
易賢網(wǎng)手機(jī)網(wǎng)站地址:初步使用Node連接Mysql數(shù)據(jù)庫
由于各方面情況的不斷調(diào)整與變化,易賢網(wǎng)提供的所有考試信息和咨詢回復(fù)僅供參考,敬請(qǐng)考生以權(quán)威部門公布的正式信息和咨詢?yōu)闇?zhǔn)!
關(guān)于我們 | 聯(lián)系我們 | 人才招聘 | 網(wǎng)站聲明 | 網(wǎng)站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 加入群交流 | 手機(jī)站點(diǎn) | 投訴建議
工業(yè)和信息化部備案號(hào):滇ICP備2023014141號(hào)-1 云南省教育廳備案號(hào):云教ICP備0901021 滇公網(wǎng)安備53010202001879號(hào) 人力資源服務(wù)許可證:(云)人服證字(2023)第0102001523號(hào)
云南網(wǎng)警備案專用圖標(biāo)
聯(lián)系電話:0871-65317125(9:00—18:00) 獲取招聘考試信息及咨詢關(guān)注公眾號(hào):hfpxwx
咨詢QQ:526150442(9:00—18:00)版權(quán)所有:易賢網(wǎng)
云南網(wǎng)警報(bào)警專用圖標(biāo)