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 相关文章推荐
js获取事件源及触发该事件的对象
Oct 24 Javascript
js在数组中删除重复的元素自保留一个(两种实现思路)
Aug 22 Javascript
jQuery实现倒计时按钮功能代码分享
Sep 03 Javascript
Javascript生成全局唯一标识符(GUID,UUID)的方法
Feb 27 Javascript
浅谈js中几种实用的跨域方法原理详解
Dec 02 Javascript
JavaScript实现替换字符串中最后一个字符的方法
Mar 07 Javascript
Async Validator 异步验证使用说明
Jul 03 Javascript
Extjs 中的 Treepanel 实现菜单级联选中效果及实例代码
Aug 22 Javascript
Vue.js搭建移动端购物车界面
Jun 28 Javascript
vue项目在安卓低版本机显示空白的原因分析(两种)
Sep 04 Javascript
深入了解响应式React Native Echarts组件
May 29 Javascript
React+EggJs实现断点续传的示例代码
Jul 07 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 调试环境(IIS+PHP+MYSQL)
2007/01/10 PHP
php中防止恶意刷新页面的代码小结
2012/10/31 PHP
php遍历文件夹和文件列表示例分享
2014/03/11 PHP
php添加数据到xml文件的简单例子
2016/09/08 PHP
关于document.cookie的使用javascript
2010/10/29 Javascript
jquery 卷帘效果实现代码(不同方向)
2013/02/05 Javascript
jQuery ReferenceError: $ is not defined 错误的处理办法
2013/05/10 Javascript
js showModalDialog 弹出对话框的简单实例(子窗体)
2014/01/07 Javascript
用队列模拟jquery的动画算法实例
2015/01/20 Javascript
director.js实现前端路由使用实例
2015/02/03 Javascript
Javascript动态创建div的方法
2015/02/09 Javascript
JavaScript中的toDateString()方法使用详解
2015/06/12 Javascript
浅谈javascript中的DOM方法
2015/07/16 Javascript
利用JS做网页特效_大图轮播(实例讲解)
2017/08/09 Javascript
Node.js net模块功能及事件监听用法分析
2019/01/05 Javascript
js JSON.stringify()基础详解
2019/06/19 Javascript
Vue.js实现tab切换效果
2019/07/24 Javascript
微信小程序webview与h5通过postMessage实现实时通讯的实现
2019/08/20 Javascript
[01:03:31]DOTA2上海特级锦标赛B组资格赛#1 Alliance VS Fnatic第二局
2016/02/26 DOTA
django项目运行因中文而乱码报错的几种情况解决
2017/11/07 Python
使用python的pexpect模块,实现远程免密登录的示例
2019/02/14 Python
Python字符串逆序的实现方法【一题多解】
2019/02/18 Python
利用PyCharm Profile分析异步爬虫效率详解
2019/05/08 Python
PyQt5下拉式复选框QComboCheckBox的实例
2019/06/25 Python
opencv python图像梯度实例详解
2020/02/04 Python
Python数组拼接np.concatenate实现过程
2020/04/18 Python
美国女士泳装店:Swimsuits For All
2017/03/02 全球购物
优秀的茶餐厅创业计划书
2014/01/03 职场文书
素质教育标语
2014/06/27 职场文书
经理岗位职责
2015/02/02 职场文书
食堂卫生管理制度
2015/08/04 职场文书
学习计划是什么
2019/04/30 职场文书
导游词之河北滦平金山岭长城
2019/10/16 职场文书
SQL 窗口函数实现高效分页查询的案例分析
2021/05/21 SQL Server
JavaScript 事件捕获冒泡与捕获详情
2021/11/11 Javascript
漫画《催眠麦克风-Dawn Of Divisions》第二卷PV公开
2022/04/05 日漫