105 lines
3.0 KiB
Markdown
105 lines
3.0 KiB
Markdown
# 单表操作
|
||
|
||
操作入口:`db.table('table_name')`
|
||
|
||
## logic
|
||
- 作用:设置本查询是带有逻辑删除的,在执行`delete`方法时,会转换为`update`语句,在执行`select`相关方法时,会拼接`logic_field <> logic_value`
|
||
|
||
## withBlank
|
||
- 作用:设置后续插入或修改时,不过滤空值。
|
||
|
||
## column
|
||
- 入参:`column`: `String` 列名
|
||
- 作用:设置要查询列,`select`语句中有效
|
||
|
||
## column
|
||
- 入参:`column`: `String` 列名
|
||
- 入参:`value` : `Object` 值
|
||
- 作用:设置要操作的列的值,非`select`语句中有效
|
||
|
||
## primary
|
||
- 入参:`primary`: `String` 主键
|
||
- 入参:`defaultValue`: `Object` 插入时使用的默认值,可省略
|
||
- 作用:设置主键列,在`update`中语句有效,或`save`方法判断标准
|
||
|
||
## insert
|
||
- 入参: `data` : `Map` `insert`的列和值,可省略(通过`column`设置)
|
||
|
||
```javascript
|
||
// insert into sys_user(user_name,role) values('李富贵','admin')
|
||
return db.table('sys_user').insert({ user_name : '李富贵', role : 'admin'})
|
||
```
|
||
|
||
## batchInsert
|
||
- 入参: `collection` : `Collection` `insert`的列和值的集合
|
||
- 入参: `batchSize` : `int` batchSize
|
||
|
||
```javascript
|
||
return db.table('sys_user').batchInsert([
|
||
{ user_name : '李富贵', role : 'admin'},
|
||
{ user_name : '王二狗', role : 'admin'},
|
||
{ user_name : '管理员', role : 'super-admin'},
|
||
])
|
||
```
|
||
|
||
## update
|
||
- 入参: `data` : `Map` `insert`的列和值,可省略(通过`column`设置)
|
||
- 入参:`isUpdateBlank`: `boolean` 是否更新空值字段(可省略,默认为`false`)
|
||
|
||
```javascript
|
||
// update sys_user set user_name = '王二狗' where id = 1
|
||
return db.table('sys_user').primary('id').update({ id: 1, user_name : '王二狗'})
|
||
```
|
||
|
||
## save
|
||
- 入参: `data` : `Map` `insert`或`update`的列和值,可省略(通过`column`设置)
|
||
- 入参:`beforeQuery` : `boolean` 是否根据id查询有没有数据,可省略(默认`false`)
|
||
|
||
```javascript
|
||
// insert into sys_user(id,user_name) values('xxx','王二狗');
|
||
return db.table('sys_user').primary('id', uuid()).save({user_name: '王二狗'});
|
||
// insert into sys_user(user_name) values('王二狗');
|
||
return db.table('sys_user').primary('id').save({user_name: '王二狗'});
|
||
// update sys_user set user_name = '王二狗' where id = 1
|
||
return db.table('sys_user').primary('id').save({id: 1,user_name: '王二狗'});
|
||
```
|
||
|
||
## select
|
||
查询list(与db.select 作用相同)
|
||
|
||
```javascript
|
||
// select * from sys_user
|
||
return db.table('sys_user').select()
|
||
```
|
||
|
||
## page
|
||
分页查询(与db.page 作用相同)
|
||
|
||
```javascript
|
||
// select * from sys_user
|
||
return db.table('sys_user').page()
|
||
```
|
||
|
||
## where
|
||
设置查询条件
|
||
|
||
- eq --> `==`
|
||
- ne --> `<>`
|
||
- lt --> `<`
|
||
- gt --> `>`
|
||
- lte --> `<=`
|
||
- gte --> `>=`
|
||
- in --> `in`
|
||
- notIn --> `not in`
|
||
- like --> `like`
|
||
- notLike --> `not like`
|
||
|
||
```javascript
|
||
// select * from sys_user where user_name like '%李富贵%' and role = 'admin'
|
||
return db.table('sys_user')
|
||
.where()
|
||
.like('user_name','%李富贵%')
|
||
.eq('role','admin')
|
||
.select()
|
||
```
|