node.js连接数据库有很多种,比如:mongoose,oracle,mysql...,我自己玩就选了一个我很熟悉的轻量级的mysql数据库尝试了一把,感觉不错。

首先要把mysql客户端安装好,官网http://dev.mysql.com/downloads/mysql/

安装好的版本是以这样呈现的

注:因为在mysql5.6版本有启动有bug,会闪退,所以将my-default.ini文件名改成my.ini就可以弹出启动界面

用这样界面操作不是很直观,于是我下了一个有视图界面很直观的可以操作的Navicat for MySQL,界面效果如下:

mysql数据库安装完成并且创建了一个数据库名叫“klm”,其中里面有一张表叫“goods”接下来我要通过node.js来连接获取到数据。

首先怎么用呢?

node.js已经给提供了一个mysql封装,只要在对应的项目工程目录下执行npm install mysql

在你的工程目录就会自动下载代码,如图:

这个时候在我的项目工程下的node_modules目录下就会出现一个mysql文件下,看到这个说明下载成功了,现在可以引用了。

首先我们要创建一个js来做连接,这个js随便你放在项目工程的那个位置,只要引用到mysql就行,先看代码:

/**
* Created by 蒯灵敏 on 15-2-4.
*/
var _mysql = require('mysql'); //创建连接
var mysql = _mysql.createConnection({
//主机
host: '127.0.0.1',
//用户
user: 'root',
//密码
password: '123456',
//端口
port: 3306,
//数据库名
database: 'klm'
});var _sql = "select * from goods"; //创建一个数据库连接
mysql.connect(function (err) {
if (err) {
console.log('connect-' + err);
}
console.log('connect succeed...');
}); mysql.query(_sql, function (err, rows) {
if (err) {
console.log("query-" + err);
}
console.log("query succeed..." + rows); }); //关闭连接
mysql.end(function (err) {
if (err) {
return;
}
console.log("close succeed...");
});

在node开发中需要什么样的模块 都会通过require在引用,

代码中的 var _mysql = require("mysql");是引用整个mysql模块,

然后在这个模块中提供了createConnection()用来创建连接,这里连接数据库的方式让我想到了JDBC的写法,建立常量用户名,密码等,在这里直接设置了“主机”,“用户名”,“密码”,“端口”,“数据库名”就能进行连接,

mysql.connect可以用来判断是否连接成功,如果连接成功了,程序会往下走。想要进行“增删改查”的操作,在mysql这个封装中只提供了一个函数query()来执行,第一个参数是sql语句,第二个参数是函数,用来接收查询结果。

这个操作连接很简单,记录下这种方式,也许以后有用到。。。

最后执行一下这个js 就会看到结果:如图

node.js链接mysql的更多相关文章

  1. 关于Node.js 链接mysql超时处理(默认8小时)

    备注:这是在pm2配置node环境下,超过8小时mysql自动关闭的情况下出现的解决方法:1.封装mysql.js var mysql = require('mysql'); var connecti ...

  2. Node.js 连接 MySQL 并进行数据库操作

    Node.js 连接 MySQL 并进行数据库操作  按照这篇操作mysql的指引,我远程操作了我另一台电脑的mysql数据库. var mysql = require('mysql'); var c ...

  3. Node.js连接MySQL数据库及构造JSON的正确姿势

    做一下整理,以前也很随意的引入包链接数据库,后来发现常常连接出问题,异常退出,后来使用在网上一个方法解决问题,网址由于书签丢失,抱歉不能引用了.再有就是简单的模块化下,使得目录合理点,再有就是说明一下 ...

  4. Node.js连接Mysql,并把连接集成进Express中间件中

    引言 在node.js连接mysql的过程,我们通常有两种连接方法,普通连接和连接池. 这两种方法较为常见,当我们使用express框架时还会选择使用中间express-myconnection,可以 ...

  5. 使用node js 操作 Mysql 数据库

    使用node js 操作 Mysql 数据库 http://www.nodejs.org/ //node js 数据库操作 MySQL //使用https://github.com/felixge/n ...

  6. APNs功能之Node.js和Mysql应用总结

    APNs功能之Node.js和Mysql应用总结 这篇文档主要是总结Node.js和Mysql的学习心得体会.当然也可以看作是此前所写的消息推送服务的续篇. 简单描述下应用背景,我们的应用需要实现苹果 ...

  7. node.js连接MySQL操作及注意事项

    node.js作为服务端的js运行环境已经出现了有几年了,最近我有个朋友也在做这方面的开发,但是也是刚刚接触,遇到了很多坑.前几天他们在操作数据库的时候出现了点问题,后来我们一起看了看,其实都是nod ...

  8. node.js使用mysql模块的坑

      之前用node.js写的订餐系统,很容易挂掉,一直也没想去解决它.今天看了一下,试了试,原因是在连接数据库的时候没有对error事件进行处理,导致程序一直挂在那里,需要重启服务才能正常使用.   ...

  9. 分享Node.js + Koa2 + MySQL + Vue.js 实战开发一套完整个人博客项目网站

    这是个什么的项目? 使用 Node.js + Koa2 + MySQL + Vue.js 实战开发一套完整个人博客项目网站. 博客线上地址:www.boblog.com Github地址:https: ...

随机推荐

  1. 高校排名 加强版(codevs 2799)

    题目描述 Description 大学排名现在已经非常流行.在网上搜索可查到关于中国大学排行的各个方面的消息. 我们知道,在一大学里通常都由许多不同的"系"(专业)组成,比如计算机 ...

  2. Linear regression with one variable算法实例讲解(绘制图像,cost_Function ,Gradient Desent, 拟合曲线, 轮廓图绘制)_矩阵操作

    %测试数据 'ex1data1.txt', 第一列为 population of City in 10,000s, 第二列为 Profit in $10,000s 1 6.1101,17.592 5. ...

  3. TCP/IP的Socket编程

    1. TCP/IP.UDP的基本概念 TCP/IP(Transmission Control Protocol/Internet Protocol)即传输控制协议/网间协议,他是一个工业标准的协议集, ...

  4. iOS 百度地图坐标标注

    注:由于iOS9改用更安全的https,为了能够在iOS9中正常使用地图SDK,请在"Info.plist"中进行如下配置,否则影响SDK的使用. <key>NSApp ...

  5. XSLT教程

    XSL 指扩展样式表语言(EXtensible Stylesheet Language), 它是一个 XML 文档的样式表语言. XSLT 指 XSL 转换.即使用 XSLT 将 XML 文档转换为其 ...

  6. cf118A(水题)

    题意就是讲给出的字符串元音字母去掉,在每个辅音字母前加点,且小写输出...注意y也要去掉(以我英语挂科的水平也知道y是辅音字母)... 水题.. 直接上代码好了... #include <ios ...

  7. db2 Hidden columns

    When a table column is defined with the implicitly hidden attribute, that column is unavailable unle ...

  8. Loadrunner11.0 录制手机App脚本的方法

    使用Loadrunner录制手机终端App脚本 1. 说明 目前手机APP上的功能日益丰富,对手机应用功能的性能测试需求也越来越多.公司比较抠门没有花钱买Loadrunner,可怜我们工作中一直用的破 ...

  9. jq 轮播图

    <style> #focus{width:500px;height:200px;overflow:hidden;/*用一个div把图片包含设置超出范围隐藏*/} </style> ...

  10. php 用户登录验证

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...