基于koa2操作mysql封装例子

新建better-mysql.js
const mysql = require('mysql');

const config = require('../config/sqlConfig.js')

let pool = mysql.createPool({
    user:config.mysql_user,
    password:config.mysql_password,
    database:config.mysql_database,
    host:config.mysql_host,
    port:config.port
})

let query = ( sql, values ) => {
    return new Promise(( resolve, reject ) => {
        pool.getConnection(function(err, connection) {

            if (err) {
                reject( err )
            } else {
                connection.query(sql, values, ( err, fields) => {
                    if ( err )   reject( err )
                    else  resolve( fields )
                    connection.release();
                })
            }
        })
    })
}
let createTable = ( sql ) => {
  return query( sql ,[])
}

let tb_users =
  `create table if not exists tb_users(
    user_id VARCHAR(32) NOT NULL COMMENT '用户ID',
    username VARCHAR(100) NOT NULL COMMENT '用户名',
    password VARCHAR(100) NOT NULL COMMENT '密码',
    avator VARCHAR(100) NOT NULL COMMENT '头像',
    create_time VARCHAR(100) NOT NULL COMMENT '注册时间',
    login_status VARCHAR(100) NOT NULL COMMENT '登录状态',
    user_rule VARCHAR(100) NOT NULL COMMENT '用户角色',
    PRIMARY KEY ( user_id )
  );`
// 建用户表
createTable(tb_users)

module.exports = {query}
调用方法演示,新建index.js文件
const Router = require("koa-router");
const { query } = require("./better-mysql.js");
const moment = require('moment');
let router = new Router({ prefix:"/user"})

let userModel = {
    insertUser(value)=>{
           let _sql = "insert into tb_users set user_id=?, username=?,password=?,avator=?,create_time=?,login_status=?,user_rule=?;"
           return query( _sql, value)
    }
}
// 注册
router.post('/registor',async (ctx)=>{
  let username = "amisu10";
  let password = '1'
  password = common.md5(password);

  let user_id = common.uuid() ;
  let create_time = moment().format('YYYY-MM-DD HH:mm:ss');
  let avator = "头像";
  let login_status = "0";
  let user_rule = "1";

   await userModel.insertUser([user_id,username,password,avator,create_time,login_status,user_rule]).then(res => {
      console.log('注册成功',res);
      ctx.body = {
        code:0,
        count:count,
        message:'注册成功'
      }
    })
  }
})

转载于:https://www.cnblogs.com/amysu/p/10951243.html

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值