node.js 开发指南 ? Node.js 连接 MySQL 并进行数据库操作


Posted in Javascript onJuly 29, 2014

Node.js是一套用来编写高性能网络服务器的JavaScript工具包
 
通常在NodeJS开发中我们经常涉及到操作数据库,尤其是 MySQL ,作为应用最为广泛的开源数据库则成为我们的首选,本篇就来介绍下如何通过NodeJS来操作 MySQL 数据库。 安装MySQL模块到NodeJS中 我们需要让NodeJS支持MySQL,则需要将MySQL模块添加到系统支持库
 
想要快速了解Node.js ,赞生推荐亲看看 node.js_guide.pdf  — node.js 开发指南 :想要电子版高清的 留言发送
 
如果不想留言 可以带你做飞机! 直接下载
 
Node.js
简单介绍一下node.js的操作吧
安装 node-mysql
C代码  

$ npm install mysql

 
创建测试表
//数据库名 NodeSample
C代码  

CREATE TABLE `NodeSample`.`MyTable` ( 
`id` INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY , 
`firstname` VARCHAR( 20 ) NOT NULL , 
`lastname` VARCHAR( 20 ) NOT NULL , 
`message` TEXT NOT NULL 
) ENGINE = MYISAM ;

 
连接数据库
Js代码  

var sys = require('sys'); 
 
var Client = require('mysql').Client; 
var client = new Client(); 
 
client.user = 'someuser'; 
client.password = 'password'; 
 
client.connect(function(error, results) { 
if(error) { 
console.log('Connection Error: ' + error.message); 
return; 
} 
console.log('Connected to MySQL'); 
});

 
打开数据库
Js代码  

ClientConnectionReady = function(client) 
{ 
client.query('USE NodeSample', function(error, results) { 
if(error) { 
console.log('ClientConnectionReady Error: ' + error.message); 
client.end(); 
return; 
} 
}); 
};

 
完成数据库操作程序
Js代码 

var sys = require('sys'); 
 
var Client = require('mysql').Client; 
var client = new Client(); 
 
client.user = 'someuser'; 
client.password = 'password'; 
 
console.log('Connecting to MySQL...'); 
 
client.connect(function(error, results) { 
if(error) { 
console.log('Connection Error: ' + error.message); 
return; 
} 
console.log('Connected to MySQL'); 
ClientConnectionReady(client); 
}); 
 
ClientConnectionReady = function(client) 
{ 
client.query('USE NodeSample', function(error, results) { 
if(error) { 
console.log('ClientConnectionReady Error: ' + error.message); 
client.end(); 
return; 
} 
ClientReady(client); 
}); 
}; 
 
ClientReady = function(client) 
{ 
var values = ['Chad', 'Lung', 'Hello World']; 
client.query('INSERT INTO MyTable SET firstname = ?, lastname = ? , message = ?', values, 
function(error, results) { 
if(error) { 
console.log("ClientReady Error: " + error.message); 
client.end(); 
return; 
} 
console.log('Inserted: ' + results.affectedRows + ' row.'); 
console.log('Id inserted: ' + results.insertId); 
} 
); 
GetData(client); 
} 
 
GetData = function(client) 
{ 
client.query( 
'SELECT * FROM MyTable', 
function selectCb(error, results, fields) { 
if (error) { 
console.log('GetData Error: ' + error.message); 
client.end(); 
return; 
} 
// Uncomment these if you want lots of feedback 
//console.log('Results:'); 
//console.log(results); 
//console.log('Field metadata:'); 
//console.log(fields); 
//console.log(sys.inspect(results)); 
 
if(results.length > 0) 
{ 
var firstResult = results[0]; 
console.log('First Name: ' + firstResult['firstname']); 
console.log('Last Name: ' + firstResult['lastname']); 
console.log('Message: ' + firstResult['message']); 
} 
}); 
 
client.end(); 
console.log('Connection closed'); 
};
Javascript 相关文章推荐
jquery 输入框数字限制插件
Nov 10 Javascript
appendChild() 或 insertBefore()使用与区别介绍
Oct 11 Javascript
借助javascript代码判断网页是静态还是伪静态
May 05 Javascript
VUEJS实战之构建基础并渲染出列表(1)
Jun 13 Javascript
springMVC结合AjaxForm上传文件
Jul 12 Javascript
jQuery EasyUI基础教程之EasyUI常用组件(推荐)
Jul 15 Javascript
AngularJS中的JSONP实例解析
Dec 01 Javascript
javascript正则表达式模糊匹配IP地址功能示例
Jan 06 Javascript
使用jQuery和ajax代替iframe的方法(详解)
Apr 12 jQuery
js实现本地时间同步功能
Aug 26 Javascript
Vue 多层组件嵌套二种实现方式(测试实例)
Sep 08 Javascript
微信小程序实现选项卡功能
Jun 19 Javascript
js返回前一页刷新本页重载页面
Jul 29 #Javascript
extjs 如何给column 加上提示
Jul 29 #Javascript
extjs 分页使用jsp传递数据示例
Jul 29 #Javascript
把文本中的URL地址转换为可点击链接的JavaScript、PHP自定义函数
Jul 29 #Javascript
JavaScript eval() 函数介绍及应用示例
Jul 29 #Javascript
javascript从image转换为base64位编码的String
Jul 29 #Javascript
javascript自定义函数参数传递为字符串格式
Jul 29 #Javascript
You might like
PHP编程函数安全篇
2013/01/08 PHP
浅析PKI加密解密 OpenSSL
2013/07/01 PHP
php使用cookie实现记住用户名和密码实现代码
2015/04/27 PHP
php基于openssl的rsa加密解密示例
2016/07/11 PHP
php数值转换时间及时间转换数值用法示例
2017/05/18 PHP
JavaScript获取GridView选择的行内容
2009/04/14 Javascript
Jquery上传插件 uploadify v3.1使用说明
2012/06/18 Javascript
深入解析contentWindow, contentDocument
2013/07/04 Javascript
常用的JavaScript验证正则表达式汇总
2013/11/26 Javascript
javascript history对象(历史记录)使用方法(实现浏览器前进后退)
2014/01/07 Javascript
JavaScript修改浏览器tab标题小技巧
2015/01/06 Javascript
JS实现网页顶部向下滑出的全国城市切换导航效果
2015/08/22 Javascript
JS获取鼠标坐标位置实例分析
2016/01/20 Javascript
动态加载JavaScript文件的两种方法
2016/04/22 Javascript
JS简单判断滚动条的滚动方向实现方法
2017/04/28 Javascript
JS图片预加载插件详解
2017/06/21 Javascript
详解vue中点击空白处隐藏div的实现(用指令实现)
2018/04/19 Javascript
Python实现统计文本文件字数的方法
2017/05/05 Python
解决pycharm无法识别本地site-packages的问题
2018/10/13 Python
Django框架首页和登录页分离操作示例
2019/05/28 Python
Django中ajax发送post请求 报403错误CSRF验证失败解决方案
2019/08/13 Python
python DataFrame转dict字典过程详解
2019/12/26 Python
Django单元测试中Fixtures用法详解
2020/02/25 Python
python GUI库图形界面开发之PyQt5下拉列表框控件QComboBox详细使用方法与实例
2020/02/27 Python
施华洛世奇西班牙官网:SWAROVSKI西班牙
2019/06/06 全球购物
澳洲网红粉泥面膜:Sand & Sky
2019/08/13 全球购物
英国领先的鞋类零售商和顶级品牌的官方零售商:Wynsors
2020/02/17 全球购物
星空联盟C# .net笔试题
2014/12/05 面试题
战略合作意向书范本
2014/04/01 职场文书
超市活动计划书
2014/04/24 职场文书
世界读书日的活动方案
2014/08/20 职场文书
股东合作协议书
2014/09/12 职场文书
2014党员干部四风问题对照检查材料思想汇报
2014/09/24 职场文书
小学英语教师研修感悟
2015/11/18 职场文书
2016中秋晚会开幕词
2016/03/03 职场文书
CSS控制继承中的height能变为可继承吗
2022/06/10 HTML / CSS