zoukankan      html  css  js  c++  java
  • 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;
  • 相关阅读:
    ACM算法
    过度拟合的问题
    多类分类:一对多
    先进的优化
    简化成本函数和梯度下降
    对数回归的成本函数
    决策边界
    假设表示
    分类
    hdu1574 I Hate It (线段树,查询区间最大值)
  • 原文地址:https://www.cnblogs.com/niejunchan/p/5738628.html
Copyright © 2011-2022 走看看