thinknodemysql

1.1.1 • Public • Published

这是一个thinknodemysql 包

主要目的是方便操作mysql

installtion

npm install --save thinknodemysql

使用示例

const mysql = require('thinknodemysql');
const config = {
    host:'您的IP地址',
    user:'您的用户名',
    password:'您的密码',
    database:'数据库名称',
    prefix:'数据库前缀',
};
const model = new mysql(config);
### 查询数据示例 es7用法
let find = async function(){
    try{
        let result = await model.table('__ADMIN_USER__').find();
        console.log(result);
        console.log(model.log);  

        result = await model.table('__ADMIN_USER__').select();
        console.log(result);
        console.log(model.log);
    } catch(err){
        console.log(err);
    }
}
### 增加数据示例 es7用法
let add = async function(){
    try{

        let result = await model.table('__ADMIN_USER__').data({username:'como',add_time:15219840100}).add();
        console.log(result);
        console.log(model.log); 

        result = let result = await model.table('__ADMIN_USER__').data([{username:'como',add_time:15219840100},{username:'como',add_time:15219840100}]).addAll();
        console.log(result);
        console.log(model.log);
    } catch(err){
        console.log(err);
    }
}
### 删除数据示例 es7用法
let delete = async function(){
    try{
        let result = await model.table('__ADMIN_USER__').where({username:'como'}).delete();
        console.log(result);
        console.log(model.log); 
    } catch(err){
        console.log(err);
    }
}
### 更新数据示例 es7用法
let delete = async function(){
    try{
        let result = await model.table('__ADMIN_USER__').where({username:'como'}).update({add_time:15219000000});
        console.log(result);
        console.log(model.log); 
    } catch(err){
        console.log(err);
    }
}

API说明

.log

记录的语句分析耗时间和执行查询耗时时间,方便分析语句的问题,以带来最大的执行效率

.table(tableName='')

数据表名称

.field(fields = ''){

要查询的字段[字符串/数组]

.where(objwhere = {})

条件[字符串/对象]

.limit(start = 0,end)

限制条件[start 开始,end 结束]

.order(mixedparam = '')

排序条件[字符串]

.group(mixedparam = '')

分组 [字符串]

.having(mixedparam = '')

having条件[字符串]

.page(p = 1,limit = 30)

分页设置[P 第1页 limit 每页查询多少条]

.join(mixedparam = '',type)

连表查询[mixedparam 连表语句 type 链接类型 默认是INNER JOIN]

.union(mixedparam = '',type = null)

union查询 [type 为true时 union all查询]

.alias(aliasName = '')

数据表别名

.data(objdata = {})

数据填写 如果用add 那么传入对象 如果用addAll 请传入数组

.find(boolean = true)

查询一行数据 (boolean 为false时返回sql)

.select(boolean = true)

查询多行数据 (boolean 为false时返回sql)

.query(sql,param = [])

直接用sql进行查询 param 为格式化参数

.startTrans()

开启事务

.commit()

提交事务

.rollback()

事务回滚

.add(data = {},returnResult = 'insertId')

添加数据(所有参数可传可不传)

.addAll(data = [],returnResult = 'insertId')

批量添加数据(所有参数可传可不传)

.selectAll(arr = [])

多条sql批量查询(arr是sql语句数组)

.update(data = {},returnResult = 'affectedRows')

数据更新(所有参数可传可不传)

.delete()

数据删除(必须与where配合使用)

.count(field = '*')

数据统计

.sum(field = '')

数据求和

.max(field = '')

查询最大值

.avg(field = '')

查询平均值

.min(field = '')

查询最小值

.getLastSql()

获最后一条查询的语句

.close()

关闭数据库链接

更新日志

2018-05-28 como 首次完成,使用bable编译过,应该可以支持低版本的nodejs [模块编写环境:nodejs 8.1] 2018-06-22 como 修复事件超出10次警告的信息,增加close关闭数据库链接 2018-06-25 como 修复update()调试语句的问题 2018-07-09 como 修复join() 方法bug问题 修复where 不用用字符串作为下标

Dependencies (2)

Dev Dependencies (0)

    Package Sidebar

    Install

    npm i thinknodemysql

    Weekly Downloads

    0

    Version

    1.1.1

    License

    MIT

    Unpacked Size

    43.2 kB

    Total Files

    6

    Last publish

    Collaborators

    • como20170606