Package io.trino.plugin.jdbc
Interface JdbcClient
-
- All Known Implementing Classes:
BaseJdbcClient,CachingJdbcClient,ForwardingJdbcClient,StatisticsAwareJdbcClient,TransactionCachingJdbcClient
public interface JdbcClient
-
-
Method Summary
-
-
-
Method Detail
-
schemaExists
default boolean schemaExists(ConnectorSession session, String schema)
-
getSchemaNames
Set<String> getSchemaNames(ConnectorSession session)
-
getTableNames
List<SchemaTableName> getTableNames(ConnectorSession session, Optional<String> schema)
-
getTableHandle
Optional<JdbcTableHandle> getTableHandle(ConnectorSession session, SchemaTableName schemaTableName)
-
getColumns
List<JdbcColumnHandle> getColumns(ConnectorSession session, JdbcTableHandle tableHandle)
-
toColumnMapping
Optional<ColumnMapping> toColumnMapping(ConnectorSession session, Connection connection, JdbcTypeHandle typeHandle)
-
toColumnMappings
List<ColumnMapping> toColumnMappings(ConnectorSession session, List<JdbcTypeHandle> typeHandles)
Bulk variant oftoColumnMapping(ConnectorSession, Connection, JdbcTypeHandle).
-
toWriteMapping
WriteMapping toWriteMapping(ConnectorSession session, Type type)
-
supportsAggregationPushdown
default boolean supportsAggregationPushdown(ConnectorSession session, JdbcTableHandle table, List<List<ColumnHandle>> groupingSets)
-
implementAggregation
default Optional<JdbcExpression> implementAggregation(ConnectorSession session, AggregateFunction aggregate, Map<String,ColumnHandle> assignments)
-
getSplits
ConnectorSplitSource getSplits(ConnectorSession session, JdbcTableHandle tableHandle)
-
getConnection
Connection getConnection(ConnectorSession session, JdbcSplit split) throws SQLException
- Throws:
SQLException
-
abortReadConnection
default void abortReadConnection(Connection connection) throws SQLException
- Throws:
SQLException
-
prepareQuery
PreparedQuery prepareQuery(ConnectorSession session, JdbcTableHandle table, Optional<List<List<JdbcColumnHandle>>> groupingSets, List<JdbcColumnHandle> columns, Map<String,String> columnExpressions)
-
buildSql
PreparedStatement buildSql(ConnectorSession session, Connection connection, JdbcSplit split, JdbcTableHandle table, List<JdbcColumnHandle> columns) throws SQLException
- Throws:
SQLException
-
supportsLimit
boolean supportsLimit()
-
isLimitGuaranteed
boolean isLimitGuaranteed(ConnectorSession session)
-
setColumnComment
default void setColumnComment(ConnectorSession session, JdbcTableHandle handle, JdbcColumnHandle column, Optional<String> comment)
-
addColumn
void addColumn(ConnectorSession session, JdbcTableHandle handle, ColumnMetadata column)
-
dropColumn
void dropColumn(ConnectorSession session, JdbcTableHandle handle, JdbcColumnHandle column)
-
renameColumn
void renameColumn(ConnectorSession session, JdbcTableHandle handle, JdbcColumnHandle jdbcColumn, String newColumnName)
-
renameTable
void renameTable(ConnectorSession session, JdbcTableHandle handle, SchemaTableName newTableName)
-
createTable
void createTable(ConnectorSession session, ConnectorTableMetadata tableMetadata)
-
beginCreateTable
JdbcOutputTableHandle beginCreateTable(ConnectorSession session, ConnectorTableMetadata tableMetadata)
-
commitCreateTable
void commitCreateTable(ConnectorSession session, JdbcOutputTableHandle handle)
-
beginInsertTable
JdbcOutputTableHandle beginInsertTable(ConnectorSession session, JdbcTableHandle tableHandle, List<JdbcColumnHandle> columns)
-
finishInsertTable
void finishInsertTable(ConnectorSession session, JdbcOutputTableHandle handle)
-
dropTable
void dropTable(ConnectorSession session, JdbcTableHandle jdbcTableHandle)
-
rollbackCreateTable
void rollbackCreateTable(ConnectorSession session, JdbcOutputTableHandle handle)
-
buildInsertSql
String buildInsertSql(JdbcOutputTableHandle handle, List<WriteFunction> columnWriters)
-
getConnection
Connection getConnection(ConnectorSession session, JdbcOutputTableHandle handle) throws SQLException
- Throws:
SQLException
-
getPreparedStatement
PreparedStatement getPreparedStatement(Connection connection, String sql) throws SQLException
- Throws:
SQLException
-
getTableStatistics
TableStatistics getTableStatistics(ConnectorSession session, JdbcTableHandle handle, TupleDomain<ColumnHandle> tupleDomain)
-
createSchema
void createSchema(ConnectorSession session, String schemaName)
-
dropSchema
void dropSchema(ConnectorSession session, String schemaName)
-
getSystemTable
default Optional<SystemTable> getSystemTable(ConnectorSession session, SchemaTableName tableName)
-
quoted
String quoted(RemoteTableName remoteTableName)
-
getTableProperties
Map<String,Object> getTableProperties(ConnectorSession session, JdbcTableHandle tableHandle)
-
getTableScanRedirection
default Optional<TableScanRedirectApplicationResult> getTableScanRedirection(ConnectorSession session, JdbcTableHandle tableHandle)
-
-