Node.js系列之连接DB的方法(3)
程序员文章站
2023-11-26 13:37:58
背景
node.js,有人称之为运行在服务器端的javascript。以往我们使用javascript时,都是依赖后端查询数据库并返回数据,而javascript只需...
背景
node.js,有人称之为运行在服务器端的javascript。以往我们使用javascript时,都是依赖后端查询数据库并返回数据,而javascript只需要展示即可。问题来了,就不能绕开后端直接查询数据库吗?答案是肯定的。
关系型——以mysql操作为例
node.js提供了mysql操作的驱动(模块),如果还未安装,需要执行 npm install mysql 命令来安装。
//引入模块 var mysql=require('mysql'); //定义连接对象connection var connection=mysql.createconnection({ host:'192.168.*.*', user:'root', password:'******', database:'db' }); //连接 connection.connect(); //执行查询测试 var sql='select * from sys_user'; connection.query(sql,function(err,result){ if(err){ console.log('[select error]-',err.message); return; } console.log('-----select-------'); console.log(result); console.log('------------------------'); }); //关闭连接 connection.end();
部分查询结果如下:
node.js连接mysql的其他增删改操作就不一一展示了,和查询操作类似,准备好sql语句,使用提供的响应的方法就ok了。
非关系型——以mongodb为例
安装驱动模块
npm install mongodb
插入操作
var mongoclient = require('mongodb').mongoclient; var db_conn_str = 'mongodb://192.168.*.*:27017/runoob'; var insertdata = function(db, callback) { // 连接到表 site var collection = db.collection('site'); // 准备数据 var data = [{"name":"sherry","sex":"female","email":"xxxxx@163.com"},{"name":"tom","sex":"male","email":"xxxx@163.com"}]; collection.insert(data, function(err, result) { if(err) { console.log('error:'+ err); return; } callback(result); }); } mongoclient.connect(db_conn_str, function(err, db) { console.log("连接成功!"); insertdata(db, function(result) { console.log(result); db.close(); }); });
执行代码:
可以看到插入日志
使用命令mongodb/bin/mongo进入mongo客户端,可以看到刚刚插入的数据。
总结
从操作来看,node.js操作数据库还是比较简单的,底层实现依赖封装的mysql/mongodb模块。
从场景来看,node.js虽然可以实现大多数应用的功能,但并非要替代其他技术或产品,而是针对不同情况做出适合的选择。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
下一篇: 有流量却没有转换怎么破?