node连接数据库mysql
来源:互联网 发布:iphoto下载 mac 编辑:程序博客网 时间:2024/05/29 19:43
连接数据库有两种连接方式,一是:直接连接,每次连接都试创建一个新的连接,二是:使用连接池
在这里就不介绍第一种方式了,直接使用第二种方式
在上一节的基础上增加配置文件baseConfig.js
/** * Created by jinwei on 2017/7/31. */var dataSource={ 'dbhost':'localhost', 'port':'3306', 'user':'root', 'password':'Pass299522', 'db':'test', 'charset':'utf8', 'maxConnectLimt':10}module.exports = dataSource;
创建数据库公共文件mysql.js
/** * 创建数据库连接 */var baseConfig = require("./config/baseConfig");var mysql = require('mysql')var pool = mysql.createPool({ 'host': baseConfig.dbhost, 'port': baseConfig.port, 'user': baseConfig.user, 'password': baseConfig.password, 'database': baseConfig.db, 'charset': baseConfig.charset, 'connectionLimit': baseConfig.maxConnectLimt, 'supportBigNumbers': true, 'bigNumberStrings': true})//释放连接var release=function(connection){ connection.release(function(error){ if(error){ console.log('释放数据库连接失败') }else{ console.log('释放数据库连接成功') } })}//数据库执行sqlvar execSql = function(sql,args,handler){ //获取查询参数 this.execQuery=function(){ pool.getConnection(function(error,connection){ if(error){ console.log("数据库连接异常!") throw error; } //执行查询 if(!args){ var query = connection.query(sql,function(error , result){ if(error){ console.log('数据库查询操作异常:sql='+sql) throw error; } handler(error ,result); console.log("执行sql:"+query.sql) }) }else{ var query = connection.query(sql,args,function(error ,result){ if(error){ console.log('数据库查询操作异常:sql='+sql) throw error; } handler(error,result) }) console.log("执行sql:"+query.sql) } console.log('释放连接') connection.release() }) }}module.exports=execSql
在要调用的模块引入mysql.js
users.js
var express = require('express');var router = express.Router();var execSql = require('../mysql')/* GET users listing. */router.get('/', function(req, res, next) { res.send('respond with a resource');});router.get('/getList',function(req ,res ,next){ res.send('test user getList')});router.get('/testMysql',function(req ,res ,next){ var sql ='SELECT * FROM users'; var query = new execSql(sql,null,function(error,result){ if(error){ console.log("查询失败:"+error) throw error; } console.log("查询数据:"+JSON.stringify(result)) res.send(result); }) query.execQuery();});router.get('/addUser',function(req ,res ,next){ var sql ='INSERT INTO users(id,username,age,sex) VALUES(?,?,?,?)'; var args=['5','adduse',36,'2']; var query = new execSql(sql,args,function(error,result){ if(error){ console.log("插入失败:"+error) throw error; } console.log("插入数据:"+JSON.stringify(result)) res.send(result); }) query.execQuery();});module.exports = router;
访问即可
阅读全文
1 0
- node 连接 mysql数据库
- node连接mysql数据库
- node连接数据库mysql
- Node JS 连接Mysql 数据库
- node js 连接mysql数据库
- Node.js连接mysql数据库
- node.js连接mysql数据库
- Node 连接mysql、redis数据库
- node.js 连接mysql数据库 完美教程
- 三、node.js连接mysql数据库
- 三、node.js连接mysql数据库
- Node.js开发 ---- 连接MySql数据库
- node.js连接mysql数据库增删改
- node.js学习笔记(10)--mysql模块连接mysql数据库
- Node.js 连接 MySQL 并进行数据库操作
- Node.js 连接 MySQL 并进行数据库操作
- Node.js笔记(二)连接mysql数据库
- Node.js 连接 MySQL 并进行数据库操作
- spring+cxf发布服务报错Error creating bean with name 'org.apache.cxf.jaxws.spring.NamespaceHandler$SpringSe
- 以POST方式访问wcf方法
- IntelliJ IDEA 配置Gradle运行SpringBoot Web项目(tomcat容器)
- Android程序员学WEB前端(2)-HTML(2)-锚点链接列表表单-Sublime
- PHP isset()与empty()的使用区别详解
- node连接数据库mysql
- ubuntu c++ 连接mysql
- MyEclipse、Tomcat、Maven、SVN环境搭建
- Java技术----Java泛型详解
- Android中JniHelper类里 getStaticMethodInfo的使用
- pandas dataframe在指定的位置添加一列, 或者一次性添加几列,reindex,pd.concat的使用
- TCP协议与UDP协议的区别
- 接口回调
- getStaticMethodInfo参数详解