时间:2021-05-26
MySQL数据库作为最流行的开源数据库。基本上是每个web开发者必须要掌握的数据库程序之一了。
基本使用
node.js上,最受欢迎的mysql包就是mysql模块。
npm install mysql然后在js脚本里面直接引用进来
var mysql = require('mysql');配置mysql的数据库连接。
var connection = mysql.createConnection({ host : 'ip', user : '用户名', password : '密码', database : 'dbname'});connection.connect();这样就拿到了一个连接。
然后就可以愉快的进行各种curd操作了。
node.js对数据库的curd都在query这个方法里面。这点和ado.net有很大的区别。
你的所有的操作,都从query的回调函数里面获得结果
connection.query('SELECT 1 + 1 AS solution', function (error, results, fields) { if (error) throw error; console.log('The solution is: ', results[0].solution);});连接池操作
在单机软件中,我们之间使用简单获得一个连接,然后就行了。
但是在面向互联网的web服务里面,频繁的创建和关闭连接,是很消耗服务器性能的。
于是我们的前辈们发明了各种池子。比如多线程操作中的线程池,游戏开发中的对象池,当然还包括数据库操作的连接池。
创建连接池:
var mysql = require('mysql');var pool = mysql.createPool({ connectionLimit : 连接池数量, host : 'ip地址', user : '账号', password : '密码', database : '数据库名称'});然后就是和上文一样的curd操作
//从连接池中获取一个连接pool.getConnection(function(err,connection){if(err)throwerr;//notconnected!// 使用这个连接curdconnection.query('SELECTsomethingFROMsometable',function(error,results,fields){//使用完之后,记得把这个连接放到连接池里面去connection.release();//Handleerroraftertherelease.if(error)throwerror;});});如果你的程序要退出,请把调用连接池的end()方法。不然程序会卡在后台,一直退出失败。
封装成Promise
在ES6中,可以直接用和C#的await一样的语法去调用js的异步函数。
但是要求这个函数必须是async声明和返回值是Promise对象。
query = function (sql, arr, callback) { console.log('获取一个连接'); return new Promise(function (resolve, reject) { pool.getConnection(function (err, connection) { if (err) { reject(err);// not connected! } else { console.log('开始查询'); connection.query(sql, arr, function (error, results, fields) { connection.release(); console.log('连接已经释放,返回结果'); if (error) reject(error); // callback && callback(results, fields) resolve({ rows: results, fields: fields }) }); } }); })}简单的用法到这里就结束了。当然还有更高级的用法,比如MySQL的Cluster操作等。有兴趣的话,可以去研究,因为我目前用不到这种功能,所有就不往后去深究了。
以上就是node.js如何操作MySQL数据库的详细内容,更多关于node.js 操作数据库的资料请关注其它相关文章!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
本文实例讲述了Node.js实现连接mysql数据库功能。分享给大家供大家参考,具体如下:Node.js连接数据库前,需要安装相应的包,如果安装sqlserve
关于node.js操作mysql数据库的相关介绍请阅读全文吧。下文介绍的非常详细,具体内容如下所示:安装mysql模块npminstallmysql数据库准备m
前言我们在上一篇文章《Node.js数据库操作之连接MySQL数据库(一)》中已经学习了Nodejs连接MySQL数据库的几种方法,数据库连接上了之后就需要对数
本文实例讲述了Node.js操作MongoDB数据库。分享给大家供大家参考,具体如下:Node.js操作MongoDBnpminitnpmimongodb--s
最近在学习node.js,做了一个练手项目,使用node.js+express框架,配合mysql数据库和前端vue框架开发一个多人文档编辑系统。node.js