https://github.com/kongnet/j2sql2
enhance j2sql use ioredis mysql-promise
https://github.com/kongnet/j2sql2
Last synced: 10 days ago
JSON representation
enhance j2sql use ioredis mysql-promise
- Host: GitHub
- URL: https://github.com/kongnet/j2sql2
- Owner: kongnet
- License: mit
- Created: 2019-10-30T10:08:13.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2024-01-20T09:05:00.000Z (over 1 year ago)
- Last Synced: 2025-05-25T04:40:14.770Z (about 1 month ago)
- Language: JavaScript
- Size: 691 KB
- Stars: 2
- Watchers: 2
- Forks: 1
- Open Issues: 9
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# j2sql2
enhance j2sql use ioredis mysql-promise mssql
###
npm i j2sql2
导入 sample.sql
node sample.js
### 关键字和表的冲突
> 不要使用以下关键字作为数据库表名
pool
\_mysql
format
cmd
run
genData### check 增强
> 在使用对象提交 sql 的情况下,增强如下功能
- 对 where 条件是否有包含此列
- 对 column 是否有包含此列
- 对 order by 是否有包含此列
- 对 string 和 number 类型进行预检测
- 同时封装 mysql 和 redis 详见 sample.js> 如果数据库配置文件中打开如下配置,将返回和接受,camel 形式的列名,例如 cTime => c_time ..
```javascript
extendOption: {
columnCamelize: true
}
```> 如果有 mysql.crudExtend 就扩展 db['tableName'].ex 属性,并检查数据库表是否有如下字段,都基于 d_flag 字段
```javascript
mysql: {
crudExtend: {
isDevMode: 1 // 默认开发模式打印sql语句
/* delflagField: 'd_flag', // 默认逻辑删除标记
createTimeField: 'c_time',
modifyTimeField: 'm_time' */
}
}
``````javascript
redis: {
keyLimit: ['x1', 'c*'] // '*' 全部允许
}
// 也可以通过redis实例 redis.keysLimit.add('*') or redis.keysLimit.status = 0 全部允许(关闭过滤)
// 详见 sample.js
```
```javascript
// reJson 支持
let r = (await rd.jset('sky', '.', { 'x': 1 }))
console.log('reJson Test', r)
r = (await rd.jget('sky', '.'))
console.log('reJson Test', r)
// 详见 sample.js
```
- 详见 crud.js
- page, 分页
- list,
- insert,
- update,
- remove,
- clear,
- getById,
- removeById,
- deleteById,
- updateById,
- addById 列增加