Class JdbcCatalog

  • All Implemented Interfaces:
    org.apache.flink.table.catalog.Catalog

    @PublicEvolving
    public class JdbcCatalog
    extends AbstractJdbcCatalog
    Catalogs for relational databases via JDBC.
    • Constructor Detail

      • JdbcCatalog

        public JdbcCatalog​(ClassLoader userClassLoader,
                           String catalogName,
                           String defaultDatabase,
                           String username,
                           String pwd,
                           String baseUrl)
        Creates a JdbcCatalog.
        Parameters:
        userClassLoader - the classloader used to load JDBC driver
        catalogName - the registered catalog name
        defaultDatabase - the default database name
        username - the username used to connect the database
        pwd - the password used to connect the database
        baseUrl - the base URL of the database, e.g. jdbc:mysql://localhost:3306
    • Method Detail

      • listDatabases

        public List<String> listDatabases()
                                   throws org.apache.flink.table.catalog.exceptions.CatalogException
        Throws:
        org.apache.flink.table.catalog.exceptions.CatalogException
      • getDatabase

        public org.apache.flink.table.catalog.CatalogDatabase getDatabase​(String databaseName)
                                                                   throws org.apache.flink.table.catalog.exceptions.DatabaseNotExistException,
                                                                          org.apache.flink.table.catalog.exceptions.CatalogException
        Specified by:
        getDatabase in interface org.apache.flink.table.catalog.Catalog
        Overrides:
        getDatabase in class AbstractJdbcCatalog
        Throws:
        org.apache.flink.table.catalog.exceptions.DatabaseNotExistException
        org.apache.flink.table.catalog.exceptions.CatalogException
      • listTables

        public List<String> listTables​(String databaseName)
                                throws org.apache.flink.table.catalog.exceptions.DatabaseNotExistException,
                                       org.apache.flink.table.catalog.exceptions.CatalogException
        Throws:
        org.apache.flink.table.catalog.exceptions.DatabaseNotExistException
        org.apache.flink.table.catalog.exceptions.CatalogException
      • getTable

        public org.apache.flink.table.catalog.CatalogBaseTable getTable​(org.apache.flink.table.catalog.ObjectPath tablePath)
                                                                 throws org.apache.flink.table.catalog.exceptions.TableNotExistException,
                                                                        org.apache.flink.table.catalog.exceptions.CatalogException
        Specified by:
        getTable in interface org.apache.flink.table.catalog.Catalog
        Overrides:
        getTable in class AbstractJdbcCatalog
        Throws:
        org.apache.flink.table.catalog.exceptions.TableNotExistException
        org.apache.flink.table.catalog.exceptions.CatalogException
      • tableExists

        public boolean tableExists​(org.apache.flink.table.catalog.ObjectPath tablePath)
                            throws org.apache.flink.table.catalog.exceptions.CatalogException
        Throws:
        org.apache.flink.table.catalog.exceptions.CatalogException