Node.js系列之连接DB的方法(3)


Posted in Javascript onAugust 30, 2019

背景

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系列之连接DB的方法(3)

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();
 });
});

执行代码:

Node.js系列之连接DB的方法(3)

可以看到插入日志

Node.js系列之连接DB的方法(3)

使用命令mongodb/bin/mongo进入mongo客户端,可以看到刚刚插入的数据。

Node.js系列之连接DB的方法(3)

总结

从操作来看,node.js操作数据库还是比较简单的,底层实现依赖封装的mysql/mongodb模块。

从场景来看,node.js虽然可以实现大多数应用的功能,但并非要替代其他技术或产品,而是针对不同情况做出适合的选择。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JavaScript控制Session操作方法
Jan 17 Javascript
js中onload与onunload的使用示例
Aug 25 Javascript
jQuery阻止事件冒泡具体实现
Oct 11 Javascript
JavaScript在网页中画圆的函数arc使用方法
Nov 13 Javascript
jQuery简单入门示例之用户校验demo示例
Jul 09 Javascript
javascript cookie基础应用之记录用户名的方法
Sep 20 Javascript
jQuery 检查某个元素在页面上是否存在实例代码
Oct 27 Javascript
基于Vue实现关键词实时搜索高亮显示关键词
Jul 21 Javascript
three.js利用射线Raycaster进行碰撞检测
Mar 12 Javascript
JavaScript实现简单日历效果
Sep 11 Javascript
用js实现放大镜效果
Oct 28 Javascript
如何用JavaScipt测网速
May 09 Javascript
Node.js系列之发起get/post请求(2)
Aug 30 #Javascript
Node.js系列之安装配置与基本使用(1)
Aug 30 #Javascript
微信小程序实现写入读取缓存详解
Aug 30 #Javascript
VUE 自定义组件模板的方法详解
Aug 30 #Javascript
Jquery动态列功能完整实例
Aug 30 #jQuery
vue 兄弟组件的信息传递的方法实例详解
Aug 30 #Javascript
微信小程序sessionid不一致问题解决
Aug 30 #Javascript
You might like
PHP 获取客户端真实IP地址多种方法小结
2010/05/15 PHP
ThinkPHP的URL重写问题
2014/06/22 PHP
ThinkPHP框架结合Ajax实现用户名校验功能示例
2019/07/03 PHP
对YUI扩展的Gird组件 Part-1
2007/03/10 Javascript
一个级联菜单代码学习及removeClass与addClass的应用
2013/01/24 Javascript
如何在父窗口中得知window.open()出的子窗口关闭事件
2013/10/15 Javascript
JS实现的数组全排列输出算法
2015/03/19 Javascript
jquery制作图片时钟特效
2020/03/30 Javascript
使用vue.js制作分页组件
2016/06/27 Javascript
JS实现图片垂直居中显示小结
2016/12/13 Javascript
使用jQuery和ajax代替iframe的方法(详解)
2017/04/12 jQuery
bootstrap table实现点击翻页功能 可记录上下页选中的行
2017/09/28 Javascript
利用SpringMVC过滤器解决vue跨域请求的问题
2018/02/10 Javascript
微信小程序中的canvas 文字断行和省略号显示功能的处理方法
2018/11/14 Javascript
关于vue-cli 3配置打包优化要点(推荐)
2019/04/22 Javascript
基于Vue实现电商SKU组合算法问题
2019/05/29 Javascript
js实现的格式化数字和金额功能简单示例
2019/07/30 Javascript
Python发送http请求解析返回json的实例
2018/03/26 Python
Python 打印中文字符的三种方法
2018/08/14 Python
python 实现图片旋转 上下左右 180度旋转的示例
2019/01/24 Python
python3使用matplotlib绘制条形图
2020/03/25 Python
Python3.0中普通方法、类方法和静态方法的比较
2019/05/03 Python
Python QQBot库的QQ聊天机器人
2019/06/19 Python
浅析Windows 嵌入python解释器的过程
2019/07/26 Python
python中几种自动微分库解析
2019/08/29 Python
读取nii或nii.gz文件中的信息即输出图像操作
2020/07/01 Python
Python DES加密实现原理及实例解析
2020/07/17 Python
CSS3制作轮播图的一种方法
2019/11/11 HTML / CSS
HTML5实现多张图片上传功能
2016/03/11 HTML / CSS
.NET程序员的数据库面试题
2012/10/10 面试题
平面设计师工作职责范文
2013/12/03 职场文书
表彰大会策划方案
2014/05/13 职场文书
人力资源管理毕业求职信
2014/08/05 职场文书
教师个人自我评价
2015/03/04 职场文书
2019军训心得体会
2019/06/27 职场文书
Vue.js中v-for指令的用法介绍
2022/03/13 Vue.js