nodejs 利用對mysql資料庫進行查詢和插入資料
阿新 • • 發佈:2019-01-09
nodejs對資料庫的操作是比較簡單的。下面看一個對laughter庫操作:
這是專案檔案結構圖:
config.js的配置如下:
//資料庫配置檔案
module.exports =
{
mysql: {
host : 'localhost',
user : 'root',
password : '',
port: '3306',
database : 'laughter'
}
};
picture.js是用來儲存對錶的操作命令的:
var reSpiderSQL = {
insert:"INSERT INTO reSpider(`rs_link`,`rs_date`,`rs_sort`,`rs_type`) VALUES ?",
getInfoByType:'SELECT * FROM reSpider WHERE rs_type = ? order by rs_id desc limit 1',
}
module.exports = {
'pictureSQL':pictureSQL,
'reSpiderSQL': reSpiderSQL,
'postDataToFront':postDataToFront
};
以上兩個檔案是配置項,主要的運用是在database.js裡面:
var express = require('express');
var router = express.Router();
// 匯入MySQL模組
var mysql = require('mysql');
var dbConfig = require('../db/config');
var userSQL = require('../db/picture');
// 使用DBConfig.js的配置資訊建立一個MySQL連線池
var connection = mysql.createConnection(dbConfig.mysql);
connection.connect();
//為datatime提供字串
function getNowFormatDate() {
var date = new Date();
var seperator1 = "/";
var seperator2 = ":";
var month = date.getMonth() + 1;
var strDate = date.getDate();
if (month >= 1 && month <= 9) {
month = "0" + month;
}
if (strDate >= 0 && strDate <= 9) {
strDate = "0" + strDate;
}
var currentdate = date.getFullYear() + seperator1 + month + seperator1 + strDate
+ " " + date.getHours() + seperator2 + date.getMinutes()
+ seperator2 + date.getSeconds();
return currentdate;
}
// 新增爬蟲最後一次爬取的資訊
var saveLastSpider = function(link,sort,type){
console.log('saveLastSpider')
console.log(link)
var timestamp=getNowFormatDate();
var values = [
[link,timestamp,parseInt(sort),parseInt(type)]
];
connection.query(userSQL.reSpiderSQL.insert,[values],function(err, result) {
if(result) {
result = {
code: 200,
msg:'增加成功'
};
}
});
}
//查詢出最後一次爬取的資訊,返回一個新地址
var getInfoByType = function(type,callback){
var values = [
[parseInt(type)]
];
connection.query(userSQL.reSpiderSQL.getInfoByType,[values],function(err, result) {
if(result) {
callback(result[0].rs_link)
}
});
}
//呼叫函式
getInfoByType(11,function(result){
res.json({newUrl:result});
});
saveLastSpider('2222',11,11);
謝謝關注和點贊