node.js连接mysql与基本用法示例


Posted in Javascript onJanuary 05, 2019

本文实例讲述了node.js连接mysql与基本用法。分享给大家供大家参考,具体如下:

下载mysql模块

使用命令npm install mysql下载mysql模块

mysql引入模块

var mysql = require("mysql");

创建连接池

使用createPool()创建一个mysql连接池,传入一个表参数作为连接信息

var pool = mysql.createPool({
  host:"127.0.0.1",
  port:3306, //默认端口3306
  database:"student", //需要连接的数据库
  user:"root", //用户名
  password:"123456", //密码
});

编写操作函数

使用连接池的方法getConnection()获取连接方法

参数callback方法有三个参数错误信息err,SQL语句的结果sql_result,字段说明fields_desc

conn.query(sql,callback) 执行发送来的sql语句,然后调用callback

function mysql_exec(sql,callback){
  //getConnection是从连接池获得mysql的连接通道
  //异步获取,成功就会调用callback,conn就会返回一个
  //与mysql通讯句柄
  pool.getConnection(function(err,conn){
    if(err){
      if(callback){
        callback(err,null,null);
      }
      return;
    }
    conn.query(sql,function(sql_err,sql_result,fields_desc){
      if(sql_err){
        if(callback){
          callback(sql_err,null,null);
        }
        return;
      }
      //sql_result返回结果
      //field_desc
      if(callback){
        callback(null,sql_result,fields_desc);
      }
    })
  });
}

使用操作函数

sql操作基本都是异步进行的

mysql_exec("select * from mess",function(err,sql_result,fields_desc){
  if(err){
    console.log(err);
    return;
  }
  if(sql_result){
    console.log(sql_result); //此处会打印出sql返回结果
  }
  if(fields_desc){
    console.log(fields_desc); //此处会打印出每个字段的说明
  }
});

希望本文所述对大家nodejs程序设计有所帮助。

Javascript 相关文章推荐
JavaScript 判断浏览器类型及版本
Feb 21 Javascript
在IE上直接编辑网页内容的js代码(IE地址栏js)
Apr 27 Javascript
Javascript实现的鼠标经过时播放声音
May 18 Javascript
滚动图片效果 jquery实现回旋滚动效果
Jan 08 Javascript
javascript向后台传送相同属性的参数即数组参数
Feb 17 Javascript
jQuery修改li下的样式以及li下的img的src的值的方法
Nov 02 Javascript
Angular.JS学习之依赖注入$injector详析
Oct 20 Javascript
jQuery操作css样式
May 15 jQuery
Node.js爬取豆瓣数据实例分析
Mar 05 Javascript
原生javascript AJAX 三级联动的实现代码
May 04 Javascript
vue-cli项目中使用公用的提示弹层tips或加载loading组件实例详解
May 28 Javascript
Vue不能观察到数组length的变化
Jun 08 Javascript
Node.js Buffer模块功能及常用方法实例分析
Jan 05 #Javascript
Node.js net模块功能及事件监听用法分析
Jan 05 #Javascript
JS无限级导航菜单实现方法
Jan 05 #Javascript
JSON字符串操作移除空串更改key/value的介绍
Jan 05 #Javascript
JavaScript常见事件对象与操作实例总结
Jan 05 #Javascript
JavaScript常见事件处理程序实例总结
Jan 05 #Javascript
JavaScript代码调试方法实例小结
Jan 05 #Javascript
You might like
wiki-shan写的php在线加密的解密程序
2008/09/07 PHP
Symfony2学习笔记之控制器用法详解
2016/03/17 PHP
PHP 实现字符串翻转(包含中文汉字)的实现代码
2017/04/01 PHP
PHP使用xpath解析XML的方法详解
2017/05/20 PHP
phpstudy的php版本自由修改的方法
2017/10/18 PHP
PHP使用ActiveMQ实现消息队列的方法详解
2019/05/31 PHP
鼠标事件延时切换插件
2011/03/12 Javascript
关于JavaScript中原型继承中的一点思考
2012/07/25 Javascript
jQuery操作DOM之获取表单控件的值
2015/01/23 Javascript
30分钟快速掌握Bootstrap框架
2016/05/24 Javascript
jQuery实现div横向拖拽排序的简单实例
2016/07/13 Javascript
AngularJS基础 ng-if 指令用法
2016/08/01 Javascript
JS实现页面中所有img对象添加onclick事件及新窗口查看图片的方法
2016/12/27 Javascript
Node.js中如何合并两个复杂对象详解
2016/12/31 Javascript
AngularJS路由删除#符号解决的办法
2017/09/28 Javascript
浅谈JS函数节流防抖
2017/10/18 Javascript
vuex操作state对象的实例代码
2018/04/25 Javascript
优化Vue中date format的性能详解
2020/01/13 Javascript
Vue执行方法,方法获取data值,设置data值,方法传值操作
2020/08/05 Javascript
Python开发编码规范
2006/09/08 Python
python3 requests中使用ip代理池随机生成ip的实例
2018/05/07 Python
Python Numpy 自然数填充数组的实现
2019/11/28 Python
python飞机大战pygame游戏之敌机出场实现方法详解
2019/12/17 Python
python将logging模块封装成单独模块并实现动态切换Level方式
2020/05/12 Python
详解px单位html5响应式方案
2018/03/08 HTML / CSS
销售副总经理岗位职责
2013/12/11 职场文书
高二政治教学反思
2014/02/01 职场文书
个人实习生的自我评价
2014/02/16 职场文书
2014高考励志标语
2014/06/05 职场文书
党代会心得体会
2014/09/04 职场文书
职代会闭幕词
2015/01/28 职场文书
市场部经理岗位职责
2015/02/02 职场文书
2015年推广普通话演讲稿
2015/03/20 职场文书
光荣之路观后感
2015/06/12 职场文书
教你如何使用Python实现二叉树结构及三种遍历
2021/06/18 Python
vue 给数组添加新对象并赋值
2022/04/20 Vue.js