Appearance
sql
使用db.sql进行sql操作。
只支持查询:
select
操作。不支持DML
操作:insert
,update
,delete
语句
使用
分页查询
使用'limit offset, count'语句来进行查询分页,
支持限制查询返回的记录条数,通过offset值指定从第多少条开始,count指定总共返回多少条记录。
在不指定offset, count情况,默认值为offset=0, count=5000,意味着查询返回结果集的前5000条。
count最大值可设置为10000条,意味着该查询接口最多只能返回查询结果集的前10000条。
ts
import * as db from 'db';
@useObject(['student__cst'])
class Demo {
test(): void {
let value = db.sql().execute("select name, age__CST from student__CST where age__CST > ? limit 10, 1000", { params: [12] });
}
}
let demo = new Demo();
demo.test();
参数绑定
为了解决sql的常见的注入问题,sql支持绑定参数。
ts
import * as db from 'db';
@useObject(['student__cst'])
class Demo {
test(): void {
let value = db.sql().execute("select name, age__CST from student__CST where name = ? and age__CST = ?", { params: ['hello2', 'age2']});
}
}
let demo = new Demo();
demo.test();
- in语句参数绑定
in有几个参数值,就需要有几个?
号。
ts
import * as db from 'db';
@useObject(['student__cst'])
class Demo {
test(): void {
let value = db.sql().execute("select name, age__CST from student__CST where name in (?, ?, ?)", { params: ['name1', 'name2', 'name3']});
}
}
let demo = new Demo();
demo.test();
- limit语句不支持参数绑定
即不支持limit ?, ?
,然后再传入参数的动态绑定操作。