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. 解决osg路径与文件名中的中文字符问题

    转至:http://blog.csdn.net/zhuqinglu/article/details/2064013 在打开或者保存一个osg模型的时候,经常遇到中文路径或者中文文件名的问题,此时会提示 ...

  2. 电脑没有关机可能出现发博文dns异常(write)

    现在是把装系统的技巧基本掌握,其实弄了这么多次还是有一个突破点,就是安装系统win7选择cd的iso是要ide模式.

  3. 七牛---以一个七牛上传的实例小结下AJAX跨域【转】

    http://blog.csdn.net/netdxy/article/details/50699842 使用七牛过程中,很多用户或多或少遇到跨域的问题,这篇文章主要介绍下跨域的概念来看什么情况下会出 ...

  4. Delphi之DLL知识学习2---静态链接和动态链接

    静态连接 静态链接是指Delphi 编译器把要调用的函数和过程编译成可执行代码.函数的代码可存留在应用程序的 .dpr文件或一单元中.当链接用户的应用程序时,这些函数与过程便成为最终的可执行文件的一部 ...

  5. poj 1611:The Suspects(并查集,经典题)

    The Suspects Time Limit: 1000MS   Memory Limit: 20000K Total Submissions: 21472   Accepted: 10393 De ...

  6. PRD产品需求文档

    什么是PRD? PRD是Product Requirement Document的英文缩写,即产品需求文档的意思.PRD昰产品流程中的最后一步工作,是将原型中的功能.界面具象化描述,是提交给设计(UI ...

  7. Apache与Tomcat联系及区别(转)

    Apache与Tomcat都是Apache开源组织开发的用于处理HTTP服务的项目,两者都是免费的,都可以做为独立的Web服务器运行.Apache是Web服务器而Tomcat是Java应用服务器. A ...

  8. 虚拟机安卓APK

    输入命令,可以直接把桌面上的程序直接拖过来. 注意第二条命令,有"-r".

  9. Linux学习笔记(16)shell基础之Bash变量

    1. 用户自定义变量 (1)变量设置规则 ① 变量名称可由字母.数字和下划线组成,但不能以数字开头: ② 变量的默认类型为字符串类型,如果要对数值运算,则必须指定变量类型为数值型: ③ 变量用等号连接 ...

  10. spring实例教程

    1.配置好spring mvc发现访问无法匹配,很可能是文件放的位置或者相对目录不对. 2.实例大全:http://www.yiibai.com/spring/spring-collections-l ...