类 HSqlCommand
- java.lang.Object
-
- top.daxian1218.dust.db.base.HDataCommand
-
- top.daxian1218.dust.db.sql.HSqlCommand
-
- 直接已知子类:
HDeleteSqlCommand
,HInsertSqlCommand
,HSelectSqlCommand
,HStoreProcedureSqlCommand
,HTableSqlCommand
,HUpdateSqlCommand
public class HSqlCommand extends HDataCommand
数据库Sql命令,dustdb不推荐使用拼接Sql的方式进行数据操作。
使用SqlCommand的sql加上参数的方式来访问数据库,一是提高效率的同时,也可以防止Sql注入
推荐使用参数化的sql书写方式,各个数据库对参数化的SQL语句都有优化,同时也可以避免书写错误或者SQL注入的问题
-
-
字段概要
字段 修饰符和类型 字段 说明 static java.lang.String
AND_OPERATION
static java.lang.String
DbValueKey
static java.lang.String
INDEX_KEY
static java.lang.String
OR_OPERATION
static java.lang.String
PrefixOld
-
从类继承的字段 top.daxian1218.dust.db.base.HDataCommand
fields, PrefixIndexKey, records
-
-
构造器概要
构造器 构造器 说明 HSqlCommand()
HSqlCommand(java.lang.String sql)
-
方法概要
所有方法 实例方法 具体方法 修饰符和类型 方法 说明 HSqlCommand
addOrder(java.lang.String order)
增加Order,可以加上排序方式HSqlCommand
append(HSqlCommand whereCmd)
HSqlCommand
append(HSqlCommand whereCmd, boolean useOrOperator)
HSqlCommand
appendOrderString(java.lang.String strOrder)
增加排序操作 当sql中不存在Where时,可以使用该方法 strOrder可以是多个排序字段,也可以携带desc和ascHSqlCommand
appendSql(java.lang.String sql)
HSqlCommand
appendSql(java.lang.String sql, boolean aroundBlank)
HSqlCommand
appendWhere(java.lang.String sql)
HSqlCommand
appendWhere(java.lang.String sql, java.lang.Boolean useOrOperator)
语句的Where条件 当sql中不存在Where时,可以使用该方法 支持OR拼接 OR操作如果当前没有其他Where条件,则会累积到下一个条件// cmd.where = "" cmd.appendWhere("a=1", true); // cmd.where = "a=1" cmd.appWhere("b=2", false); //cmd.where = "a=1 OR b=2"
protected java.lang.String
combineSql()
生成执行的Sql语句java.lang.Integer
getBeginIndex()
java.lang.String
getCommandText()
SqlCommandType
getCommandType()
CommandType分为Sql文本语句,存储过程,表名java.sql.Connection
getConnection()
java.lang.String
getDbExecuteSql(java.util.function.BiFunction<java.lang.Object,java.lang.Integer,java.lang.String> sqlFunc)
java.util.List<java.lang.Object>
getDbParameters()
获取参数列表,使用作为参数占位符需配合使用java.lang.Integer
getEndIndex()
java.lang.String
getExecuteText()
java.lang.String
getOrder()
排序字符串,不含Order By等关键字ProgramParameter
getProgramParameter(java.lang.String name)
java.lang.String
getWhere()
获取Where条件,CommandType为TableDirect时,通常使用该操作boolean
hasWhere()
boolean
isIgnoreOrder()
HSqlCommand
resetSql()
void
setCommandType(SqlCommandType commandType)
CommandType分为Sql文本语句,存储过程,表名 默认值为文本语句void
setConnection(java.sql.Connection connection)
void
setIgnoreOrder(boolean ignoreOrder)
void
setWhere(java.lang.String value)
-
从类继承的方法 top.daxian1218.dust.db.base.HDataCommand
appendParameter, appendParameters, appendParameters, applyBatch, execute, getFields, getPageIndex, getPageSize, getParameter, getParameterList, getParameters, getParameters, getTag, getTotalRows, hasParameter, iterate, query, setPageIndex, setPageSize, setParameter, setTag, setTotalRows
-
-
-
-
字段详细资料
-
PrefixOld
public static final java.lang.String PrefixOld
- 另请参阅:
- 常量字段值
-
OR_OPERATION
public static final java.lang.String OR_OPERATION
- 另请参阅:
- 常量字段值
-
AND_OPERATION
public static final java.lang.String AND_OPERATION
- 另请参阅:
- 常量字段值
-
INDEX_KEY
public static final java.lang.String INDEX_KEY
- 另请参阅:
- 常量字段值
-
DbValueKey
public static final java.lang.String DbValueKey
- 另请参阅:
- 常量字段值
-
-
方法详细资料
-
getCommandType
public SqlCommandType getCommandType()
CommandType分为Sql文本语句,存储过程,表名- 返回:
-
setCommandType
public void setCommandType(SqlCommandType commandType)
CommandType分为Sql文本语句,存储过程,表名 默认值为文本语句- 参数:
commandType
-
-
isIgnoreOrder
public boolean isIgnoreOrder()
-
setIgnoreOrder
public void setIgnoreOrder(boolean ignoreOrder)
-
getConnection
public java.sql.Connection getConnection()
-
setConnection
public void setConnection(java.sql.Connection connection)
-
getWhere
public java.lang.String getWhere()
获取Where条件,CommandType为TableDirect时,通常使用该操作- 返回:
-
setWhere
public void setWhere(java.lang.String value)
-
hasWhere
public boolean hasWhere()
-
getCommandText
public java.lang.String getCommandText()
- 覆盖:
getCommandText
在类中HDataCommand
-
addOrder
public HSqlCommand addOrder(java.lang.String order)
增加Order,可以加上排序方式- 参数:
order
-- 返回:
-
resetSql
public HSqlCommand resetSql()
-
appendSql
public HSqlCommand appendSql(java.lang.String sql)
-
appendSql
public HSqlCommand appendSql(java.lang.String sql, boolean aroundBlank)
-
getDbParameters
public java.util.List<java.lang.Object> getDbParameters()
获取参数列表,使用作为参数占位符需配合使用- 返回:
-
getOrder
public java.lang.String getOrder()
排序字符串,不含Order By等关键字- 返回:
- 排序字符串
-
combineSql
protected java.lang.String combineSql()
生成执行的Sql语句- 返回:
- 参数化的sql
-
getExecuteText
public java.lang.String getExecuteText()
- 覆盖:
getExecuteText
在类中HDataCommand
-
getDbExecuteSql
public java.lang.String getDbExecuteSql(java.util.function.BiFunction<java.lang.Object,java.lang.Integer,java.lang.String> sqlFunc)
-
append
public HSqlCommand append(HSqlCommand whereCmd, boolean useOrOperator)
-
append
public HSqlCommand append(HSqlCommand whereCmd)
-
appendOrderString
public HSqlCommand appendOrderString(java.lang.String strOrder)
增加排序操作 当sql中不存在Where时,可以使用该方法 strOrder可以是多个排序字段,也可以携带desc和asc- 参数:
strOrder
-- 返回:
-
appendWhere
public HSqlCommand appendWhere(java.lang.String sql)
-
appendWhere
public HSqlCommand appendWhere(java.lang.String sql, java.lang.Boolean useOrOperator)
语句的Where条件- 当sql中不存在Where时,可以使用该方法
- 支持OR拼接
// cmd.where = "" cmd.appendWhere("a=1", true); // cmd.where = "a=1" cmd.appWhere("b=2", false); //cmd.where = "a=1 OR b=2"
- 参数:
sql
-useOrOperator
-- 返回:
-
getBeginIndex
public java.lang.Integer getBeginIndex()
-
getEndIndex
public java.lang.Integer getEndIndex()
-
getProgramParameter
public ProgramParameter getProgramParameter(java.lang.String name)
-
-