@Internal public interface JdbcDialect extends Serializable
Modifier and Type | Method and Description |
---|---|
boolean |
canHandle(String url)
Check if this dialect instance can handle a certain jdbc url.
|
default Optional<String> |
defaultDriverName() |
String |
dialectName()
Get the name of jdbc dialect.
|
default String |
getDeleteStatement(String tableName,
String[] conditionFields)
Get delete one row statement by condition fields, default not use limit 1, because limit 1 is
a sql dialect.
|
default String |
getInsertIntoStatement(String tableName,
String[] fieldNames)
Get insert into statement.
|
JdbcRowConverter |
getRowConverter(RowType rowType)
Get converter that convert jdbc object and Flink internal object each other.
|
default String |
getRowExistsStatement(String tableName,
String[] conditionFields)
Get row exists statement by condition fields.
|
default String |
getSelectFromStatement(String tableName,
String[] selectFields,
String[] conditionFields)
Get select fields statement by condition fields.
|
default String |
getUpdateStatement(String tableName,
String[] fieldNames,
String[] conditionFields)
Get update one row statement by condition fields, default not use limit 1, because limit 1 is
a sql dialect.
|
default Optional<String> |
getUpsertStatement(String tableName,
String[] fieldNames,
String[] uniqueKeyFields)
Get dialect upsert statement, the database has its own upsert syntax, such as Mysql using
DUPLICATE KEY UPDATE, and PostgresSQL using ON CONFLICT...
|
default String |
quoteIdentifier(String identifier)
Quotes the identifier.
|
default void |
validate(TableSchema schema)
Check if this dialect instance support a specific data type in table schema.
|
String dialectName()
boolean canHandle(String url)
url
- the jdbc url.JdbcRowConverter getRowConverter(RowType rowType)
rowType
- the given row typedefault void validate(TableSchema schema) throws ValidationException
schema
- the table schema.ValidationException
- in case of the table schema contains unsupported type.default Optional<String> defaultDriverName()
default String quoteIdentifier(String identifier)
"
to quote.default Optional<String> getUpsertStatement(String tableName, String[] fieldNames, String[] uniqueKeyFields)
default String getRowExistsStatement(String tableName, String[] conditionFields)
default String getInsertIntoStatement(String tableName, String[] fieldNames)
default String getUpdateStatement(String tableName, String[] fieldNames, String[] conditionFields)
default String getDeleteStatement(String tableName, String[] conditionFields)
Copyright © 2014–2021 The Apache Software Foundation. All rights reserved.