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 相关文章推荐
jQuery 对Select的操作备忘记录
Jul 04 Javascript
jquery 插件学习(四)
Aug 06 Javascript
seajs1.3.0源码解析之module依赖有序加载
Nov 07 Javascript
JS.findElementById()使用介绍
Sep 21 Javascript
jquery 操作css样式、位置、尺寸方法汇总
Nov 28 Javascript
jQuery插件实现表格隔行变色及鼠标滑过高亮显示效果代码
Feb 25 Javascript
细数JavaScript 一个等号,两个等号,三个等号的区别
Oct 09 Javascript
JS组件系列之MVVM组件构建自己的Vue组件
Apr 28 Javascript
ES6扩展运算符的用途实例详解
Aug 20 Javascript
详解create-react-app 2.0版本如何启用装饰器语法
Oct 23 Javascript
VSCode搭建React Native环境
May 07 Javascript
JS PHP字符串截取函数实现原理解析
Aug 29 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
php disk_free_space 返回目录可用空间
2010/05/10 PHP
php缩放图片(根据宽高的等比例缩放)实例介绍
2013/06/09 PHP
php自定义函数截取汉字长度
2014/05/15 PHP
深入解析WordPress中加载模板的get_template_part函数
2016/01/11 PHP
CI框架无限级分类+递归的实现代码
2016/11/01 PHP
JS实现选项卡实例详解
2015/11/17 Javascript
javascript css红色经典选项卡效果实现代码
2016/05/17 Javascript
JavaScript的Ext JS框架中的GridPanel组件使用指南
2016/05/21 Javascript
jQuery实现的跨容器无缝拖动效果代码
2016/06/21 Javascript
JS限定手机版中图片大小随分辨率自动调整的方法
2016/12/05 Javascript
Bootstrap基本组件学习笔记之按钮组(8)
2016/12/07 Javascript
JS实现根据指定值删除数组中的元素操作示例
2018/08/02 Javascript
jQuery序列化form表单数据为JSON对象的实现方法
2018/09/20 jQuery
详解vue中的computed的this指向问题
2018/12/05 Javascript
jQuery实现的3D版图片轮播示例【滑动轮播】
2019/01/18 jQuery
vue-以文件流-blob-的形式-下载-导出文件操作
2020/08/07 Javascript
[01:32:10]NAVI vs VG Supermajor 败者组 BO3 第一场 6.5
2018/06/06 DOTA
pip 错误unused-command-line-argument-hard-error-in-future解决办法
2014/06/01 Python
Python合并多个装饰器小技巧
2015/04/28 Python
Python使用reportlab将目录下所有的文本文件打印成pdf的方法
2015/05/20 Python
Python使用Windows API创建窗口示例【基于win32gui模块】
2018/05/09 Python
解决pycharm运行时interpreter为空的问题
2018/10/29 Python
python for 循环获取index索引的方法
2019/02/01 Python
python3+PyQt5 自定义窗口部件--使用窗口部件样式表的方法
2019/06/26 Python
python实现从尾到头打印单链表操作示例
2020/02/22 Python
python dict乱码如何解决
2020/06/07 Python
Html5新特性用canvas标签画多条直线附效果截图
2014/06/30 HTML / CSS
COACH德国官方网站:纽约现代奢侈品牌,1941年
2018/06/09 全球购物
如何为DataGridView添加一个定制的Column Type
2014/01/21 面试题
经贸韩语专业大学生职业规划
2014/02/14 职场文书
小学优秀教育工作者事迹材料
2014/05/09 职场文书
2014小学语文教学工作总结
2014/12/17 职场文书
500字小学生检讨书
2015/02/19 职场文书
党支部评议意见
2015/06/02 职场文书
mysql性能优化以及配置连接参数设置
2022/05/06 MySQL
VMware虚拟机安装 Windows Server 2022的详细图文教程
2022/09/23 Servers