初步使用Node连接Mysql数据库


Posted in Javascript onMarch 03, 2016

使用Node做Web页面开发,基本上是连接非关系型数据库mongodb,而这里我还是先尝试连接了一下mysql数据库,因为相对于mysql来说mongodb过于生疏,想着快速出来页面,所以选择相对熟悉一些的mysql。

1. 安装mysql

下载MySQL :MySQL Downloads,并进行安装。安装完,会引导你对数据库进行配置,设置root密码以及创建普通用户以及密码。

2. 安装Node-mysql

通过npm安装mysql的软件包,通过它方便快速调用函数连接mysql数据库。进入项目文件夹,执行npm install mysql --save就行了。

安装完,在项目文件夹的node_modules目录下会生成mysql的目录。

3. 查看readme文档

进入mysql目录中,查看README文档,这步很重要,不要到处百度Google搜索怎么用,因为由于版本的不一样,也许你得到的答案并不能使你成功连接数据库。毕竟Node发展如此之快。

如果你认真读了README文档,接下来的步骤就不用再看了,避免由于版本不一致而误导你。

4. 连接mysql数据库

进入项目文档,新建TestMysql.js示例,编写如下代码:

var mysql   = require('mysql');
var connection = mysql.createConnection({
 host   : 'localhost',
 user   : 'me',
 password : 'secret',
 database : 'my_db'
});

connection.connect();

connection.query('SELECT 1 + 1 AS solution', function(err, rows, fields) {
 if (err) throw err;

 console.log('The solution is: ', rows[0].solution);
});

connection.end();

连接基本参数

  • host 主机名,localhost代表本地
  • user Mysql用户
  • password 密码
  • database 连接的数据库

client.connect()连接数据库

client.query()执行SQL语句
client.end()关闭连接。
然后通过node TestMysql.js执行程序,确保你在执行之前已经启动了Mysql服务。

5. 增删改查

使用数据库无外乎增删改查,下面示例可能会对你有些帮助。

var mysql   = require('mysql');
var connection = mysql.createConnection({
 host   : 'localhost',
 user   : 'me',
 password : 'secret',
 database : 'my_db'
});

connection.connect();

// 增加记录
client.query('insert into test (username ,password) values ("lupeng" , "123456")');

// 删除记录
client.query('delete from test where username = "lupeng"');

// 修改记录
client.query('update test set username = "pengloo53" where username = "lupeng"');

// 查询记录
client.query("select * from test" , function selectTable(err, rows, fields){
 if (err){
  throw err;
 }
 if (rows){
  for(var i = 0 ; i < rows.length ; i++){
   console.log("%d\t%s\t%s", rows[i].id,rows[i].username,rows[i].password);
  }
 }
});

connection.end();

到此,Mysql数据库的初步连接就告一段落了,接下来就可以在Node项目中自行发挥了。

希望大家继续关注。

Javascript 相关文章推荐
javascript 二维数组的实现与应用
Mar 16 Javascript
js抽奖实现随机抽奖代码效果
Dec 02 Javascript
jQuery支持动态参数将函数绑定到事件上的方法
Mar 17 Javascript
JQuery中属性过滤选择器用法实例分析
May 18 Javascript
javascript实现超炫的向上滑行菜单实例
Aug 03 Javascript
zepto中使用swipe.js制作轮播图附swipeUp,swipeDown不起效果问题
Aug 27 Javascript
浅谈addEventListener和attachEvent的区别
Jul 14 Javascript
最佳的JavaScript错误处理实践
Jul 16 Javascript
JavaScript Drum Kit 指南(纯 JS 模拟敲鼓效果)
Jul 23 Javascript
React数据传递之组件内部通信的方法
Dec 31 Javascript
基于vue中解决v-for使用报红并出现警告的问题
Mar 03 Javascript
vue项目中自定义video视频控制条的实现代码
Apr 26 Javascript
初步使用bootstrap快速创建页面
Mar 03 #Javascript
JS动态增删表格行的方法
Mar 03 #Javascript
微信jssdk在iframe页面失效问题的解决措施
Mar 03 #Javascript
基于javascript html5实现多文件上传
Mar 03 #Javascript
编写高质量JavaScript代码的基本要点
Mar 02 #Javascript
JS获取当前脚本文件的绝对路径
Mar 02 #Javascript
Webpack 实现 AngularJS 的延迟加载
Mar 02 #Javascript
You might like
对比PHP对MySQL的缓冲查询和无缓冲查询
2016/07/01 PHP
Yii2数据库操作常用方法小结
2017/05/04 PHP
PHP使用gearman进行异步的邮件或短信发送操作详解
2020/02/27 PHP
JS 继承实例分析
2008/11/04 Javascript
jquery.validate使用攻略 第一部
2010/07/01 Javascript
autoIMG 基于jquery的图片自适应插件代码
2011/03/12 Javascript
8款非常棒的响应式jQuery 幻灯片插件推荐
2012/02/02 Javascript
在javascript中关于节点内容加强
2013/04/11 Javascript
JS.findElementById()使用介绍
2013/09/21 Javascript
jquery提交form表单时禁止重复提交的方法
2014/02/13 Javascript
jQuery动画特效实例教程
2014/08/29 Javascript
jQuery动态加载css文件实现方法
2016/06/15 Javascript
JS实现页面载入时随机显示图片效果
2016/09/07 Javascript
js中DOM三级列表(代码分享)
2017/03/20 Javascript
微信小程序上滑加载下拉刷新(onscrollLower)分批加载数据(二)
2017/05/11 Javascript
Webpack常见静态资源处理-模块加载器(Loaders)+ExtractTextPlugin插件
2017/06/29 Javascript
使用vue-route 的 beforeEach 实现导航守卫(路由跳转前验证登录)功能
2018/03/22 Javascript
JS滚轮控制图片缩放大小和拖动的实例代码
2018/11/20 Javascript
Bootstrap 按钮样式与使用代码详解
2018/12/09 Javascript
vue自定义指令之面板拖拽的实现
2019/04/14 Javascript
Vue实现腾讯云点播视频上传功能的实现代码
2020/08/17 Javascript
python3+PyQt5实现自定义窗口部件Counters
2018/04/20 Python
Python正则表达式和元字符详解
2018/11/29 Python
使用PyQt4 设置TextEdit背景的方法
2019/06/14 Python
Python中使用threading.Event协调线程的运行详解
2020/05/02 Python
卡骆驰德国官方网站:Crocs德国
2019/03/29 全球购物
六查六看自查材料
2014/02/17 职场文书
安全生产网格化管理实施方案
2014/03/01 职场文书
施工安全责任书
2014/04/14 职场文书
领导班子民主生活会整改措施(工商局)
2014/09/21 职场文书
股权转让协议书
2014/12/07 职场文书
辞职信范文大全
2015/03/02 职场文书
公司处罚决定书
2015/06/24 职场文书
《怀念母亲》教学反思
2016/02/19 职场文书
pytorch 如何使用amp进行混合精度训练
2021/05/24 Python
Java并发编程之原子性-Atomic的使用
2022/03/16 Java/Android