• nodejs连接mysql实例


    1、在工程目录下运行npm install mysql安装用于nodejs的mysql模块;

    2、创建db.js模块用于连接mysql,同时定义query查询方法;

    var mysql = require('mysql');
    
    // 创建一个数据库连接池
    var pool = mysql.createPool({
      connectionLimit: 50,
      host: 'localhost',
      user: 'admin',
      password: '123456',
      database: 'rp-test'
    });
    
    // SELECT * FROM users
    // 让我们的方法支持两种模式
    // 一种是只传入SQL语句和回调函数
    // 一种是传入SQL语句、参数数据、回调函数
    
    exports.query = function (sql, P, C) {
      var params = [];
      var callback;
    
      // 如果用户传入了两个参数,就是SQL和callback
      if (arguments.length == 2 && typeof arguments[1] == 'function') {
        callback = P;
      } else if (arguments.length == 3 && Array.isArray(arguments[1]) && typeof arguments[2] == 'function') {
        params = P;
        callback = C;
      } else {
        throw new Error('对不起,参数个数不匹配或者参数类型错误');
      }
    
    
      // 如果用户传入了三个参数,那么就是SQL和参数数组、回调函数
    
    
      // 从池子里面拿一个可以使用的连接
      pool.getConnection(function (err, connection) {
        // Use the connection
        connection.query(sql, params, function () {
          // 使用完毕之后,将该连接释放回连接池
          connection.release();
          callback.apply(null, arguments);
        });
      });
    };

    3、查询示例

    var express = require('express');
    var db = require('./db');
    var router = express.Router();
    
    router.get('/',function(req, res, next){
        db.query("select * from app",function(err,result){
             //console.log(result);
            res.send(JSON.stringify (result));
        });
    });
    module.exports=router;
  • 相关阅读:
    textArea打印时,内容不显示
    自定义Metadata验证属性
    C# 扩展类与分布类
    JSON基础 JS操作JSON总结
    如何查看别人公众号的粉丝量
    Powerdesigner逆向工程从sql server数据库生成pdm
    springMVC中前台ajax传json数据后台controller接受对象为null
    Mybatis报错: Invalid bound statement (not found)
    Mysql批量插入数据性能问题
    java中String编码转换 UTF-8转GBK
  • 原文地址:https://www.cnblogs.com/niejunchan/p/5738628.html
Copyright © 2020-2023  润新知