@Override public Table getTable(String tableName) throws MetaException {
    ResultSet rs = null;
    Table table = null;
    try {
      rs = fetchColumnsViaDBMetaData(tableName);
      List<FieldSchema> cols = new ArrayList<>();
      while (rs.next()) {
        String typename = rs.getString("TYPE_NAME");
        FieldSchema fs = new FieldSchema();
        fs.setName(rs.getString("COLUMN_NAME"));
        fs.setType(getDataType(rs.getString("TYPE_NAME"), rs.getInt("COLUMN_SIZE")));
        fs.setComment("inferred column type");
        cols.add(fs);
      }

      if (cols.size() == 0) {
        // table does not exists or could not be fetched
        return null;
      }

      table = buildTableFromColsList(tableName, cols);
      //Setting the table properties.
      table.getParameters().put(JDBC_DATABASE_TYPE, getDatasourceType());
      table.getParameters().put(JDBC_DRIVER, this.driverClassName);
      table.getParameters().put(JDBC_TABLE, tableName);
      table.getParameters().put(JDBC_SCHEMA, scoped_db);
      table.getParameters().put(JDBC_URL, this.jdbcUrl);
      table.getParameters().put(hive_metastoreConstants.META_TABLE_STORAGE, JDBC_HIVE_STORAGE_HANDLER_ID);
      table.getParameters().put("EXTERNAL", "TRUE");
      Map<String, String> connectorParams = connector.getParameters();
      for (String param: connectorParams.keySet()) {
        if (param.startsWith(JDBC_CONFIG_PREFIX)) {
          table.getParameters().put(param, connectorParams.get(param));
        }
      }
      return table;
    } catch (Exception e) {
      LOG.warn("Exception retrieving remote table {}.{} via data connector {}", scoped_db, tableName
              ,connector.getName());
      throw new MetaException("Error retrieving remote table:" + e);
    } finally {
      try {
        if (rs != null) {
          rs.close();
        }
      } catch (Exception ex) { /* ignore */ }
    }
  }
Fetch a single table with the given name, returns a Hive Table object from the remote database
@return Table A Table object for the matching table, null otherwise.
@throws MetaException To indicate any failures with executing this API
@param tableName
standalone-metastore/metastore-server/src/main/java/org/apache/hadoop/hive/metastore/dataconnector/jdbc/AbstractJDBCConnectorProvider.java