NodeJs针对Express框架配置Mysql进行数据库操作
Express版本:4.14.1
说明:如下配置以express为例进行配置并进行测试,当然mysql中间件也可以在nodejs中单独使用。
1、首先进行mysql中间件安装
npm install mysql --save
2、创建数据库连接模块db.js,存放于express框架model(自己创建的)文件夹下:
let mysql = require('mysql');
let db = {}
//插入操作,注意使用异步返回查询结果
db.insert = function(connection, sql, paras, callback){
connection.query(sql, paras, function (error, results, fields) {
if (error) throw error;
callback(results.insertId);//返回插入的id
});
}
//关闭数据库
db.close = function(connection){
//关闭连接
connection.end(function(err){
if(err){
return;
}else{
console.log('关闭连接');
}
});
}
//获取数据库连接
db.connection = function(){
//数据库配置
let connection = mysql.createConnection({
host:'localhost',
user:'root',
password:'',
database:'tpanalysis',
port:3306
});
//数据库连接
connection.connect(function(err){
if(err){
console.log(err);
return;
}
});
return connection;
}
module.exports = db;
3、新建测试表project

4、进行查询测试:
let express = require('express');
let router = express.Router();
let db = require('./db');
//插入测试
router.get('/dbtest',function(req, res){
let project = {project_name: 'test', create_time: '2017-03-28 14:09:29'};
let sqlString = 'INSERT INTO project SET ?';
let connection = db.connection();
db.insert(connection, sqlString, project, function(id){
console.log('inserted id is:' + id);
});
db.close(connection);
return;
});
函数执行注意使用异步调用,此例中如果不使用异步,可能还没获得插入的id,就已经提前执行下面的代码了。
5、用命令npm start启用express,调用http://localhost:3000/dbtest,在终端查看结果如下:

NodeJs针对Express框架配置Mysql进行数据库操作的更多相关文章
- nodejs的Express框架源码分析、工作流程分析
nodejs的Express框架源码分析.工作流程分析 1.Express的编写流程 2.Express关键api的使用及其作用分析 app.use(middleware); connect pack ...
- 十三、EnterpriseFrameWork框架核心类库之数据库操作(多数据库事务处理)
本章介绍框架中封装的数据库操作的一些功能,在实现的过程中费了不少心思,针对不同数据库的操作(SQLServer.Oracle.DB2)这方面还是比较简单的,用工厂模式就能很好解决,反而是在多数据库同时 ...
- django框架配置mysql数据库
django配置mysql数据库: 1.首先更改django项目文件中的settings.py的数据库配置 DATABASES = { 'default': { 'ENGINE': 'django.d ...
- 【nodejs】express框架+mysql后台数据查询
一 环境部署 1,首先安装nodejs,并配置好环境变量(看自己习惯), 2,安装Express npm install express -g //全局安装 npm install express-g ...
- 用nodejs的express框架在本机快速搭建一台服务器
[本文出自天外归云的博客园] 简介 用express框架在本机搭建一个服务器,这样大家可以通过指定的url来在你的服务器上运行相应的功能. Express是一个基于nodejs的框架,我们可以用它来完 ...
- Nodejs之路(三)—— Nodejs之Express框架
Express 原生的 http 在某些方面表现不足以应对我们的开发需求,所以我们需要使用框架来加快我们的开发效率.框架的目的就是提高效率,让我们的代码更高度统一 在Node 中,有很多 Web 开发 ...
- nodejs基础 -- express框架
Node.js Express 框架 Express 简介 Express 是一个简洁而灵活的 node.js Web应用框架, 提供了一系列强大特性帮助你创建各种 Web 应用,和丰富的 HTTP ...
- nodejs的express框架创建https服务器
一 openssl创建https私钥和证书 1.下载windows版openssl: http://slproweb.com/products/Win32OpenSSL.html Win64OpenS ...
- Mysql之数据库操作
数据库操作: 链接数据库: mysql -uroot -p masql -uroot -pmysql 退出数据库: exit/quit/ctrl + d sql语句最后需要分号结尾: 查看时间: ...
随机推荐
- 【HDOJ1018】【大数阶乘位数】【斯特林公式】
http://acm.hdu.edu.cn/showproblem.php?pid=1018 Big Number Time Limit: 2000/1000 MS (Java/Others) ...
- djkstra nlogn
#include<bits/stdc++.h> #define fi first #define se second #define pii pair<int,int> usi ...
- queue 的基本用法
queue 1.back() 返回一个引用,指向最后一个元素2.empty() 如果队列空则返回真3.front() 返回第一个元素4.pop() 删除第一个元素5.push() 在末尾加入一个元素6 ...
- scala函数等号省略
例1: 此时没有写返回值,但是有等号,函数会自己推断返回值,此时的返回值是Int def add(x:Int, y:Int) = { x+y} 例2: 此时没有写返回值,也没有等号,无论函数内部有没有 ...
- Singer 学习十一 配置以及状态管理
配置和状态文件通过提供身份验证信息,开始时间和有关以前调用的信息,帮助为Taps和Targets提供上下文 配置文件 配置文件包含tap 运行需要的信息,通常包含API,以及数据源的凭据 特殊字段 s ...
- nginx http2 push 试用
nginx 已经很早就支持http2,今天证书过期,重新申请了一个,同时测试下http2 的push 功能 环境准备 证书 这个结合自己的实际去申请,我使用免费的letsencrypt,支持泛域名证书 ...
- Road Crossing Game Template 学习
using UnityEngine; using System; namespace RoadCrossing.Types { /// <summary> /// 小路 /// </ ...
- KiCad 开源元件库收集
KiCad 开源元件库收集 KiCad 官方 https://gitee.com/KiCAD-CN (国内镜像) https://github.com/kicad Digikey KiCad 元件库 ...
- ML(附录3)——过拟合与欠拟合
过拟合与欠拟合 我们希望机器学习得到好的模型,该模型能够从训练样本中找到一个能够适应潜在样本的普遍规律.然而,如果机器学习学的“太好”了,以至把样本的自身特点当作潜在样本的一般特性,这就使得模型的泛化 ...
- phpstorm破解方法
方法1:打开网址 http://idea.lanyus.com/ 选择获取注册码,复制生成的验证码 安装完成后,打开软件,依次选择菜单栏 Help -> Register-> Activa ...