sqlEngine(ver 1.0)-SQL引擎使用说明(Schema业务逻辑层)
-
SELECT相关方法
* getSelById(String id):根据ID检索数据的匹配条件 * getSelTable(String tables):需要查询的数据表(支持多表,多个间以','隔开) * 注意:连表表名需要从BaseTableCfg获取,*且对应关联表必须在(如://=对应关联表:SPORTSINFO,TEACHERINFO,TYPEINFO0)中! * 等效于: select * from a a left join b on a.id = b.id * getSelCols(String tables):指定需要查询的数据字段(多个间以','隔开) * tables-查询符合入参值的数据表全字段 * 等效于:select a.* from a * getSelCols(String tables,String cols):指定需要查询的数据字段(多个间以','隔开) * tables-查询符合入参值的数据表全字段 * cols-查询符合入参值的字段,数据格式为 table_colname(数据表名_数据列名) / table_colname#alias(数据表名_数据列名#别名) * 等效于: select a.*,b.name AS 'bname' from a a left join b on a.id = b.id * getPage(Integer pageNo,Integer pageSize):数据分页 * pageNo:当前第X页 * pageSize:每页Y条 * 等效于:select * from a where 1=1 limit x,y * getSort(String keys,String sortTypes):执行数据排序(多个间以','隔开) * keys:需要执行排序的字段 * sortTypes:需要的排序类型,*sortTypes值需要与keys值一一对应 * sortTypes允许的参数如下: * 0 : 正常倒叙排序 order by a DESC * 1 : 根据汉语拼音正序排序 order by CONVERT(a) USING GBK ASC * 2 : 正常正叙排序 order by ASC * 3 : 根据汉语拼音倒叙排序 order by CONVERT(a) USING GBK DESC * getWhereAnd(String key,String condition,Object val)/getWhereOr(String key,String condition,Object val):数据查询条件(and/or) * key:执行查询的数据字段,格式为:table_Cols(表名_列名) * condition:参数匹配条件(sqlEngineEnum) * EQ:等于 * LIKE:模糊查询(使用时需要自行指定模糊查询条件,如'%老刘') * GT:大于 * GTEQ:大于等于 * LT:小于 * LTEQ:小于等于 * NEQ:不等于 * NOTIN:不包含于(使用时,多个值需要以','隔开,如'1,2,3,4'..) * IN:包含于(使用时,多个值需要以','隔开,如'1,2,3,4'..) * ISNULL:为空(使用时,val入参为"n"即可) * NOTNULL:不为空(使用时,val入参为"n"即可) * BET:在a...b区间(使用时,val入参格式如下:'08:00:00**,**09:00:00',等效于查询8点-9点内产生的数据) * val:对应数据查段查询值(请严格参照上述表格格式进行入参,否则数据不会正常返回(报错)) * getCount():计算数据总条数(total值)
-
DELETE相关方法
* getDelTables(String tables):需要执行删除的数据表 * getDeleteById(String id):以ID主键作为删除条件执行删除 * getNeedDelTable(String tables):指定需要删除的数据表(多表复合删除专属方法) * **同样的,DELETE如果需要根据指定条件批量删除数据时,可以使用getWhereAnd/getWhereOr来指定删除条件^_^** * **请注意一点:getWhereAnd/getWhereOr与getDeleteById并不共存,sqlEngine会以最后的调用的方法为最终标准执行!**
-
INSERT相关方法
* getAddData(String key,Object val):需要入库的字段及其对应值 * key:入库字段(直接使用列名即可,如NAME,ID等) * val:入库值
-
UPDATE相关方法
* getUpdateTables(String tables):需要执行更新的数据主表 * getUpdateCols(String colKey,Object colValue):需要执行更新的字段及字段值 * colKey:需要执行更新的字段 * colValue:需要执行更新的字段值 * getUpdateWhereAnd(String key,String condition,Object val)/getUpdateWhereOr(String key,String condition,Object val):数据更新条件(and/or) * 具体使用可参考**getWhereAnd/getWhereOr** * getUpdCurrentVersion(String tableName,Integer value):数据版本验证/需要配合getUpdateById使用(*不适用于批量更新) * tableName:需要执行校验的数据表表名 * value:当前数据版本 * getUpdateById(String id):需要执行更新的数据主键ID
-
FETCH批量录入相关方法
* getAddFetchCols(String cols):需要执行批量录入的数据列(ID/ISDELETE/VERSION/CREATETIME/DATETIME除外),多个列名间以','隔开 * getAddFetchVals(List<BasePage fetchList):需要执行批量录入的数据值List