- 关系型数据库存储
- NoSQL数据库存储
MySQL
1) 安装node-mysql模块
npm install mysql
2) 创建程序逻辑
//引入模块
var mysql = require('mysql');
//创建表的SQL语句
var querySql = "CREATE TABLE IF NOT EXISTS work ("
+ "id INT(10) NOT NULL AUTO_INCREMENT,"
+ "hours DECIMAL(5,2) DEFAULT 0,"
+ "PRIMARY KEY(id))";
//连接数据库
var db = mysql.createConnection({
host:'127.0.0.1',
user:'username',
password:'password',
database:'databaseName'
});
//创建表
db.query(querySql, function(err) {
if (err) {
throw err;
}
console.log('Server started...');
server.listen(300,'127.0.0.1');
})
3) 添加数据,防止SQL注入攻击
在添加到查询语句中之前,query方法会自动把参数转义,以防遭受到SQL注入攻击
exports.add = function(db, req, res) {
exports.parseReceivedData(req, function(work) {
var querySqlAdd = "INSERT INTO work (hours, date, description)"
+ " VALUES (?, ?, ?)";
db.query(
querySqlAdd,
[work.hours, work.date, word.description],
function(err) {
if (err) {
throw err;
}
exports.show(db, res);
}
);
});
};
MongoDB
- MongoDB是一个通用的非关系型数据库
- MongoDB数据库把文档存在集合(collection)中
- Mongoose是LearnBoost提供的一个Node模块,让你可以顺畅地使用MongoDB -