前言
這是該系列文章的第八篇,主要介紹數據庫和Node.js的結合
mongodb
安裝
- npm i mongoose
插入
var mongoose = require('mongoose') //業內常用mongoose而不用官方的mongodb
mongoose.connect('mongodb://localhost/User') //連接數據庫
var Schema = mongoose.Schema // 設計表結構
var userSchema = new Schema({
name: {
type: String,
required: true // 必須有
},
age: {
type: String //非必須填寫
}
})
var User = mongoose.model('User', userSchema)
//添加數據
new User({
name: 'lengyuexin',
age: '18'
}).save(function (err) {
if (!err)
console.log("添加成功");
})
查詢
User.find(function (err, data) {
if (err) {
console.log('查詢失敗')
} else {
console.log(data)
}
})
更新
User.update({name:"lengyuexin"}, {
name: 'yangmengyan'
}, function (err) {
if (!err) {
console.log('更新成功')
}
})
刪除
User.remove({
name: 'yangmengyan'
},
function (err) {
if (!err) {
console.log('刪除成功')
}
})
mysql
安裝
- npm i mysql
目錄結構
db.config.js
//數據庫配置文件,db.config.js
module.exports = {
host: 'localhost',
port: 3306,
database: 's',
user: 'root',
password: 'root'
};
query.js
//自定義封裝函數並導出 ,query.js
var mysql = require('mysql'); //引包
var databaseConfig = require('./db.config.js'); //加載數據庫配置文件db.config.js
//向外暴露通用增刪改查方法query
module.exports = {
query: function(sql, params, callback) {
//創建鏈接
var connection = mysql.createConnection(databaseConfig);
connection.connect(function(err) {
if (err) {
throw err;
}
//開始數據操作
connection.query(sql, params, function(err, results, fields) {
if (err) {
throw err;
}
//將查詢出來的數據返回給回調函數
callback(results, fields);
connection.end(); //關閉連接
});
});
}
};
app.js
運行app.js 之前請確保本地安裝且成功啓動了mongodb
var outQuery = require('./query.js'); //引包
var sql = 'select * from stu';
outQuery.query(sql, function(error, results, fields) {
if (!error)
console.log(results);
});