Node.js中调用mysql存储过程示例


Posted in Javascript onDecember 20, 2014

例子仅在windows下测试通过,没有放在linux下测试。如有问题,可以电邮给我~

1、安装node.js、mysql,此处略(自行搜索吧)…;

2、创建一个名为test的数据库,然后建一张名为user_info的表(仅供测试)…

这里假定mysql使用的用户名为root,密码为123456

相应的mysql如下:

/**

* 创建名为test的数据库

*/

DROP DATABASE IF EXISTS test;

CREATE DATABASE test;

USE test;

 

/**

* 创建user_info表

*/

DROP TABLE IF EXISTS `user_info`;
CREATE TABLE `user_info` (

  `userId` int(10) NOT NULL AUTO_INCREMENT,

  `userName` varchar(20) DEFAULT NULL,

  PRIMARY KEY (`userId`)

) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8;
/**

* 插入三条记录

*/

INSERT INTO user_info VALUES (NULL, '张一'), (NULL, '张二'), (NULL, '张三');

Node.js中调用mysql存储过程示例

3、创建存储过程(写的很冗余,故意的… 正好学习一下语法>_<);

DELIMITER $$

DROP PROCEDURE IF EXISTS `test`.`proc_simple`$$

CREATE PROCEDURE proc_simple(IN uid INT(10), OUT uName VARCHAR(2), OUT totalCount INT)

BEGIN
DECLARE str_name VARCHAR(20);
SET @str_name = '';

SET totalCount = 0;

        SELECT COUNT(1),userName INTO totalCount,@str_name FROM user_info WHERE userId = uid;        

        SET uName = @str_name;

        SELECT uName, totalCount;

        

    END$$

DELIMITER ;

4、写程序进行调用(假定存为名为sql.js的文件);

/**

 * Created with JetBrains WebStorm.

 * User: Meteoric_cry

 * Date: 12-12-28

 * Time: 上午00:18

 * To change this template use File | Settings | File Templates.

 */

var mysql = require('mysql');
var connection = mysql.createConnection({

    host : 'localhost',

    port : 3306,

    user : 'root',

    password : '123456',

    database : 'test',

    charset : 'UTF8_GENERAL_CI',

    debug : false

});
connection.connect();
connection.query('CALL proc_simple(1, @a, @b);', function(err, rows, fields) {

    if (err) {

       throw err;

    }
    var results = rows[0];

    var row = results[0];

    console.log("userName:",row.uName, "
count:", row.totalCount);

});
connection.end();

5、运行示例程序;

Node.js中调用mysql存储过程示例

Javascript 相关文章推荐
Javascript SHA-1:Secure Hash Algorithm
Dec 20 Javascript
js给onclick赋值传参数的两种方法
Nov 25 Javascript
js实现图片和链接文字同步切换特效的方法
Feb 20 Javascript
javascript中的3种继承实现方法
Jan 27 Javascript
JavaScript鼠标事件,点击鼠标右键,弹出div的简单实例
Aug 03 Javascript
jQuery插件zTree实现获取当前选中节点在同级节点中序号的方法
Mar 08 Javascript
解读ES6中class关键字
Nov 20 Javascript
解决layui 复选框等内置控件不显示的问题
Aug 14 Javascript
JavaScript设计模式之观察者模式实例详解
Jan 16 Javascript
基于aotu.js实现微信自动添加通讯录中的联系人功能
May 28 Javascript
js 函数性能比较方法
Aug 24 Javascript
antd日期选择器禁止选择当天之前的时间操作
Oct 29 Javascript
零基础搭建Node.js、Express、Ejs、Mongodb服务器及应用开发入门
Dec 20 #Javascript
jQuery多媒体插件jQuery Media Plugin使用详解
Dec 19 #Javascript
jquery图片播放浏览插件prettyPhoto使用详解
Dec 19 #Javascript
js中匿名函数的创建与调用方法分析
Dec 19 #Javascript
浅谈Javascript中匀速运动的停止条件
Dec 19 #Javascript
浅谈Javascript如何实现匀速运动
Dec 19 #Javascript
Javascript添加监听与删除监听用法详解
Dec 19 #Javascript
You might like
3种平台下安装php4经验点滴
2006/10/09 PHP
php eval函数用法 PHP中eval()函数小技巧
2012/10/31 PHP
Php连接及读取和写入mysql数据库的常用代码
2014/08/11 PHP
php检查字符串中是否有外链的方法
2015/07/29 PHP
详解PHP中的外观模式facade pattern
2018/02/05 PHP
laravel利用中间件防止未登录用户直接访问后台的方法
2019/09/30 PHP
JavaScript实用技巧(一)
2010/08/16 Javascript
html中使用javascript调用本地程序(exe、doc等)实现代码
2013/04/26 Javascript
js+css 实现遮罩居中弹出层(随浏览器窗口滚动条滚动)
2013/12/11 Javascript
Jquery实现的一种常用高亮效果示例代码
2014/01/28 Javascript
jquery获取复选框被选中的值
2014/03/22 Javascript
浅析Node在构建超媒体API中的作用
2014/07/30 Javascript
Jquery插件实现点击获取验证码后60秒内禁止重新获取
2015/03/13 Javascript
jQuery实现带有洗牌效果的动画分页实例
2015/08/31 Javascript
基于javascript实现动态显示当前系统时间
2016/01/28 Javascript
JavaScript数组方法总结分析
2016/05/06 Javascript
基于Vue.js的表格分页组件
2016/05/22 Javascript
原生js实现网易轮播图效果
2020/04/10 Javascript
vuejs2.0实现分页组件使用$emit进行事件监听数据传递的方法
2017/02/22 Javascript
webpack4.0 入门实践教程
2018/10/08 Javascript
微信小程序遍历Echarts图表实现多个饼图
2019/04/25 Javascript
微信小程序模板消息推送的两种实现方式
2019/08/27 Javascript
js实现拖拽元素选择和删除
2020/08/25 Javascript
[13:21]DOTA2国际邀请赛采访专栏:RSnake战队国士无双,Fnatic.Fly
2013/08/06 DOTA
[43:41]OG vs Newbee 2019国际邀请赛淘汰赛 胜者组 BO3 第一场 8.21.mp4
2020/07/19 DOTA
python数据结构之链表详解
2017/09/12 Python
python去重,一个由dict组成的list的去重示例
2019/01/21 Python
Python csv模块使用方法代码实例
2019/08/29 Python
Python文件路径名的操作方法
2019/10/30 Python
Keras使用ImageNet上预训练的模型方式
2020/05/23 Python
Python基于os.environ从windows获取环境变量
2020/06/09 Python
Marlies Dekkers内衣荷兰官方网店:荷兰奢侈内衣品牌
2020/03/27 全球购物
学生党员一帮一活动总结
2014/07/08 职场文书
2014镇党委书记党建工作汇报材料
2014/11/02 职场文书
交流会主持词
2015/07/02 职场文书
导游词范文之颐和园/重庆/云台山
2019/09/10 职场文书