parent
3081d21558
commit
d933348e8d
21
History.md
21
History.md
|
@ -1,10 +1,13 @@
|
||||||
# 3.0.1 / 2018-06-05
|
# 3.0.2 / 2018-06-21
|
||||||
|
* 修复filter解析空条件异常的bug;
|
||||||
|
* table方法支持 AS 别名。
|
||||||
|
|
||||||
|
|
||||||
|
# 3.0.1 / 2018-06-05
|
||||||
* 修复filter解析的一个bug
|
* 修复filter解析的一个bug
|
||||||
|
|
||||||
|
|
||||||
# 3.0.0 / 2018-04-16
|
# 3.0.0 / 2018-04-16
|
||||||
|
|
||||||
> 这是一个全新的大版本, 不向下兼容 2.x。
|
> 这是一个全新的大版本, 不向下兼容 2.x。
|
||||||
|
|
||||||
* 重构 API, 使用链式操作, 逻辑更加清晰
|
* 重构 API, 使用链式操作, 逻辑更加清晰
|
||||||
|
@ -13,32 +16,32 @@
|
||||||
* 新增 tableCreate/dbCreate 方法, 支持创建数据库/数据表
|
* 新增 tableCreate/dbCreate 方法, 支持创建数据库/数据表
|
||||||
* 新增 indexCreate/indexDrop/indexList, 支持对索引的增删改查
|
* 新增 indexCreate/indexDrop/indexList, 支持对索引的增删改查
|
||||||
|
|
||||||
# 2.2.2 / 2018-03-22
|
|
||||||
|
|
||||||
|
# 2.2.2 / 2018-03-22
|
||||||
* 增加时区和 BIGINT 配置
|
* 增加时区和 BIGINT 配置
|
||||||
|
|
||||||
# 2.2.0 / 2018-03-15
|
|
||||||
|
|
||||||
|
# 2.2.0 / 2018-03-15
|
||||||
* 连接池增加失败移除配置和恢复时间
|
* 连接池增加失败移除配置和恢复时间
|
||||||
|
|
||||||
# 2.1.3 / 2018-03-14
|
|
||||||
|
|
||||||
|
# 2.1.3 / 2018-03-14
|
||||||
* 优化异常输出
|
* 优化异常输出
|
||||||
|
|
||||||
# 2.1.2 / 2018-03-06
|
|
||||||
|
|
||||||
|
# 2.1.2 / 2018-03-06
|
||||||
* Bug 修复
|
* Bug 修复
|
||||||
* 修改连接方式
|
* 修改连接方式
|
||||||
* 异常返回的格式改为对象
|
* 异常返回的格式改为对象
|
||||||
|
|
||||||
# 2.1.0 / 2018-03-03
|
|
||||||
|
|
||||||
|
# 2.1.0 / 2018-03-03
|
||||||
* 大重构, 更加简练, 结构也更加合理
|
* 大重构, 更加简练, 结构也更加合理
|
||||||
|
|
||||||
# 2.0.1 / 2017-05-22
|
|
||||||
|
|
||||||
|
# 2.0.1 / 2017-05-22
|
||||||
* 优化一处由于 js 对象引用类型引起的混乱
|
* 优化一处由于 js 对象引用类型引起的混乱
|
||||||
|
|
||||||
# 2.0.0 / 2017-02-26
|
|
||||||
|
|
||||||
|
# 2.0.0 / 2017-02-26
|
||||||
* new project
|
* new project
|
||||||
|
|
24
lib/utils.js
24
lib/utils.js
|
@ -113,6 +113,9 @@ function parse$opt(opt) {
|
||||||
|
|
||||||
// 格式化表名
|
// 格式化表名
|
||||||
function fixtable(name) {
|
function fixtable(name) {
|
||||||
|
if (/ AS /i.test(name)) {
|
||||||
|
return name
|
||||||
|
}
|
||||||
return name
|
return name
|
||||||
.split('.')
|
.split('.')
|
||||||
.map(it => {
|
.map(it => {
|
||||||
|
@ -150,22 +153,31 @@ const parser = {
|
||||||
},
|
},
|
||||||
|
|
||||||
filter(opt) {
|
filter(opt) {
|
||||||
|
let sql = ''
|
||||||
|
if (!sql) {
|
||||||
|
return ' '
|
||||||
|
}
|
||||||
if (typeof opt === 'string') {
|
if (typeof opt === 'string') {
|
||||||
return ` WHERE ${opt} `
|
sql += opt
|
||||||
}
|
}
|
||||||
if (typeof opt === 'function') {
|
if (typeof opt === 'function') {
|
||||||
return ` WHERE ${opt()} `
|
sql += opt()
|
||||||
}
|
}
|
||||||
if (typeof opt === 'object') {
|
if (typeof opt === 'object') {
|
||||||
if (opt.$and) {
|
if (opt.$and) {
|
||||||
return ` WHERE ${parse$and(opt.$and)}`
|
sql += parse$and(opt.$and)
|
||||||
} else if (opt.$or) {
|
} else if (opt.$or) {
|
||||||
return ` WHERE ${parse$or(opt.$or)}`
|
sql += parse$or(opt.$or)
|
||||||
|
} else {
|
||||||
|
sql += parse$opt(opt)
|
||||||
}
|
}
|
||||||
return ` WHERE ${parse$opt(opt)}`
|
|
||||||
}
|
}
|
||||||
|
sql = sql.trim()
|
||||||
|
if (sql) {
|
||||||
|
return ` WHERE ${sql} `
|
||||||
|
} else {
|
||||||
return ' '
|
return ' '
|
||||||
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
select(arr = ['*']) {
|
select(arr = ['*']) {
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "mysqli",
|
"name": "mysqli",
|
||||||
"version": "3.0.1",
|
"version": "3.0.2",
|
||||||
"description": "MySQL tool",
|
"description": "MySQL tool",
|
||||||
"main": "index.js",
|
"main": "index.js",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
|
|
Loading…
Reference in New Issue