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

 更新时间:2014年12月20日 09:42:21   投稿:junjie  
这篇文章主要介绍了Node.js中调用mysql存储过程示例,本文在windows环境测试通过,本文一并给出了创建数据库、录入数据、创建存储过程、调用存储过程等例子,需要的朋友可以参考下
(福利推荐:【腾讯云】服务器最新限时优惠活动,云服务器1核2G仅99元/年、2核4G仅768元/3年,立即抢购>>>:9i0i.cn/qcloud

(福利推荐:你还在原价购买阿里云服务器?现在阿里云0.8折限时抢购活动来啦!4核8G企业云服务器仅2998元/3年,立即抢购>>>:9i0i.cn/aliyun

例子仅在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, '张三');

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实现接口步骤详细记录

    使用node.js实现接口步骤详细记录

    这篇文章主要给大家介绍了关于使用node.js实现接口步骤的相关资料,对于刚开始不会node写接口和调用接口,可以通过这个清晰的初步了解到整个过程,下面需要的朋友可以参考下
    2023-03-03
  • 浅析node应用的timing-attack安全漏洞

    浅析node应用的timing-attack安全漏洞

    本篇文章给大家通过原理的原因分析了node应用的timing-attack安全漏洞问题,有兴趣的朋友阅读参考下。
    2018-02-02
  • node.js 使用ejs模板引擎时后缀换成.html

    node.js 使用ejs模板引擎时后缀换成.html

    本文给大家分享一个nodejs的小技巧,将ejs模板引擎的模板后缀改成.html的使用方法,非常的简单实用,这里推荐给大家。
    2015-04-04
  • Node.js编程中客户端Session的使用详解

    Node.js编程中客户端Session的使用详解

    这篇文章主要介绍了Node.js编程中客户端Session的使用详解,是Node.js入门学习中的基础知识,需要的朋友可以参考下
    2015-06-06
  • Node.js  事件循环详解及实例

    Node.js 事件循环详解及实例

    这篇文章主要介绍了 Node.js 事件循环详解及实例的相关资料,Node.js 有多个内置的事件,我们可以通过引入 events 模块,并通过实例化 EventEmitter 类来绑定和监听事件,需要的朋友可以参考下
    2017-08-08
  • node.js require() 源码解读

    node.js require() 源码解读

    学习 Node.js ,必学如何使用 require 语句。本文通过源码分析,详细介绍 require 语句的内部运行机制,帮你理解 Node.js 的模块机制
    2015-12-12
  • sharp.js安装过程中遇到的问题总结

    sharp.js安装过程中遇到的问题总结

    本文给大家讲述的是Node.js服务端图片处理利器sharp.js安装过程中遇到的问题的汇总,非常不错,有需要的小伙伴可以参考下
    2020-04-04
  • 掌握Node.js中的Promise异步编程方式

    掌握Node.js中的Promise异步编程方式

    Node.js中的Promise是一种异步编程方式,可以解决回调地狱问题,提高代码可读性和可维护性。通过掌握Promise的使用方法,可以更好地进行异步编程,避免一些常见的错误和陷阱
    2023-05-05
  • 浅谈在node.js进入文件目录的问题

    浅谈在node.js进入文件目录的问题

    今天小编就为大家分享一篇浅谈在node.js进入文件目录的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-05-05
  • nodejs 实现钉钉ISV接入的加密解密方法

    nodejs 实现钉钉ISV接入的加密解密方法

    这篇文章主要介绍了nodejs 实现钉钉ISV接入的加密解密方法,非常不错,具有参考借鉴价值,需要的的朋友参考下吧,需要的朋友可以参考下
    2017-01-01

最新评论

?


http://www.vxiaotou.com