Interface Dialect
- All Known Implementing Classes:
DefaultDialect
public interface Dialect
方言 用于针对不同数据库进行差异归一化
- Version:
- 0.0.1
- Author:
- scx567888
-
Method Summary
Modifier and TypeMethodDescriptiondefault StringapplyExclusiveLock(String sql) 应用锁default StringapplyLimit(String sql, Long offset, Long limit) 应用分页default StringapplySharedLock(String sql) 应用锁default PreparedStatementbeforeExecuteQuery(PreparedStatement preparedStatement) 执行前处理boolean是否可以处理boolean是否可以处理booleancanHandle(DataSource dataSource) 是否可以处理createDataSource(String url, String username, String password, String[] parameters) 创建数据源default String默认值 todo 是否需要 ?dialectDataTypeToJDBCType(String dialectDataType) 方言数据类型 转换为 标准数据类型default Stringfalse 表达式<T> TypeHandler<T> findTypeHandler(cool.scx.reflect.TypeInfo type) <T> TypeHandler<T> findTypeHandler(Class<?> type) 查找default StringgetAlterTableDDL(Column[] needAdds, Column[] needRemoves, SchemaHelper.NeedChangeColumn[] needChanges, Table tableInfo) 获取 AlertTableDDLgetColumnConstraint(Column column) 当前列对象通常的 DDL 如设置 字段名 类型 是否可以为空 默认值等 (建表语句片段 , 需和 specialDDL 一起使用才完整)default StringgetColumnDefinition(Column column) getColumnDefinitions(Column[] columns) getCreateDefinition(Table table) default StringgetCreateTableDDL(Table table) 获取建表语句default StringgetDataTypeDefinition(Column column) default StringgetDataTypeDefinitionByName(String dataType, Integer length) default StringgetDataTypeNameByJDBCType(JDBCType dataType) getFinalSQL(Statement statement) 获取最终的 SQL, 一般用于 DebuggetTableConstraint(Table table) jdbcTypeToDialectDataType(JDBCType jdbcType) 标准数据类型 转换为 方言数据类型default StringquoteIdentifier(String identifier) 将字段名或表名用数据库对应的转义符包装(如 MySQL 使用反引号)default Stringtrue 表达式
-
Method Details
-
canHandle
是否可以处理 -
canHandle
是否可以处理 -
canHandle
是否可以处理 -
createDataSource
创建数据源 -
beforeExecuteQuery
default PreparedStatement beforeExecuteQuery(PreparedStatement preparedStatement) throws SQLException 执行前处理- Throws:
SQLException
-
getFinalSQL
-
findTypeHandler
查找 -
findTypeHandler
-
dialectDataTypeToJDBCType
-
jdbcTypeToDialectDataType
-
quoteIdentifier
-
falseExpression
false 表达式 -
trueExpression
true 表达式 -
applyLimit
-
applyExclusiveLock
-
getCreateTableDDL
-
getCreateDefinition
-
getColumnDefinitions
-
getTableConstraint
-
getColumnDefinition
-
getDataTypeDefinition
-
defaultDataType
-
getDataTypeNameByJDBCType
-
getDataTypeDefinitionByName
-
getColumnConstraint
-
getAlterTableDDL
default String getAlterTableDDL(Column[] needAdds, Column[] needRemoves, SchemaHelper.NeedChangeColumn[] needChanges, Table tableInfo) 获取 AlertTableDDL- Parameters:
needAdds- aneedChanges- atableInfo- a
-