新建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:'注册成功'
}
})
}
})

基于koa2操作mysql封装例子的更多相关文章

  1. 基础类封装-pymysql库操作mysql封装

    import pymysql from lib.logger import logger from warnings import filterwarnings filterwarnings(&quo ...

  2. python操作mysql封装成类

    import pymysqlimport loggingimport sys # 加入日志#获取logger实例logger = logging.getLogger("baseSpider& ...

  3. Python使用DB-API操作MySQL数据库

    Python提供了一个标准数据库API,称为DB-API,用于处理基于SQL的数据库.与任何底层数据库的交互都可以使用DB-API,因为DB-API在代码与驱动程序之间提供了一个抽象层,可以根据需要替 ...

  4. Python3操作MySQL基于PyMySQL封装的类

    Python3操作MySQL基于PyMySQL封装的类   在未使用操作数据库的框架开发项目的时候,我们需要自己处理数据库连接问题,今天在做一个Python的演示项目,写一个操作MySQL数据库的类, ...

  5. LightMysql:为方便操作MySQL而封装的Python类

    原文链接:http://www.danfengcao.info/python/2015/12/26/lightweight-python-mysql-class.html mysqldb是Python ...

  6. Linux下用OTL操作MySql(包含自己封装的类库及演示样例代码下载)

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/ClamReason/article/details/23971805 首先重点推荐介绍otl介绍及使 ...

  7. 封装操作mysql、redis

    封装操作mysql: import pymysql class MyDb: def __init__(self,host,password,user,db,port=3306,charset='utf ...

  8. jdbc操作mysql(三):利用注解封装

    案例五:利用注解封装 重复步骤 我们使用jdbc操作mysql时发现,操作不同表中数据,所写的方法基本相同:比如我们根据id向用户表添加数据,根据id删除商品表的数据,或者查询所有数据并用list集合 ...

  9. 基于MySQL的-u选项实现如何最大程度防止人为误操作MySQL数据库

    在mysql命令加上选项-U后,当发出没有WHERE或LIMIT关键字的UPDATE或DELETE时,MySQL程序就会拒绝执行.那么,我们基于MySQL提供的这项设置,就可以轻松实现如何最大程度防止 ...

随机推荐

  1. sql —— check

    CHECK 约束用于限制列中的值的范围. 原表: 现在要对性别这一列进行约束,只准值为男或者女. 步骤: 1. 2. 3. 4. 5. ctrl + s 保存一下, 现在不可以随意的修改性别了. 完成 ...

  2. VS中,卸载,移除,删除项目的区别

    不说话,上图.

  3. 【Mysql的那些事】数据库之ORM操作

    1:ORM的基础操作(必会) <1> all(): 查询所有结果 <2> filter(**kwargs): 它包含了与所给筛选条件相匹配的对象 <3> get(* ...

  4. hdu5442 Favorite Donut 后缀数组 长春网赛

    wa从一点到晚上11点没停过,也不知道为什么错,第二天换了个思路做,终于过了.这题还是有点问题的,数据有点水,我看到有人贴的代码baabbaab这组数据是4 0,明显错的,但是却可以过. 下面的是我第 ...

  5. ELK2之ELK的语法学习

    1.回顾 (1)es是什么? es是基于Apache Lucene的开源分布式(全文)搜索引擎,提供简单的RESTful API来隐藏Lucene的复杂性. es除了全文搜索引擎之外,还可以这样描述它 ...

  6. python 替换字符串的方法replace()、正则re.sub()

    一.replace()函数1用字符串本身的replace方法: a = 'hello word' b = a.replace('word','python') print b   1 2 3 二.re ...

  7. 修改eclipse默认注释

    windows-->preference-->Java-->Code Style-->Code Templates -->Comments :注释--> ... 关 ...

  8. BackgroundWorker 的输入、输出参数、进度条与文字刷新、取消机制、返回事件

    1. 定义全局变量 BackgroundWorker backgroundwoker; 2. 点击开始按钮或其它时机初始化 backgroundwoker = new BackgroundWorker ...

  9. 2019-11-19-git-修改commit日期为之前的日期

    title author date CreateTime categories git 修改commit日期为之前的日期 lindexi 2019-11-19 08:53:16 +0800 2018- ...

  10. oracle函数 TO_DATE(X[,c2[,c3]])

    [功能]将字符串X转化为日期型 [参数]c2,c3,字符型,参照to_char() [返回]字符串 如果x格式为日期型(date)格式时,则相同表达:date x 如果x格式为日期时间型(timest ...