Open
Description
From
private fun getTableColumnsMetadata(rs: ResultSet): MutableList<TableColumnMetadata> {
val metaData: ResultSetMetaData = rs.metaData
val numberOfColumns: Int = metaData.columnCount
val tableColumns = mutableListOf<TableColumnMetadata>()
val columnNameCounter = mutableMapOf<String, Int>()
val databaseMetaData: DatabaseMetaData = rs.statement.connection.metaData
val catalog: String? = rs.statement.connection.catalog.takeUnless { it.isNullOrBlank() }
val schema: String? = rs.statement.connection.schema.takeUnless { it.isNullOrBlank() }
for (i in 1 until numberOfColumns + 1) {
val tableName = metaData.getTableName(i)
val tableName = metaData.getTableName(i)
could be not available for some DB vendors, such as Hive JDBC with throw new SQLFeatureNotSupportedException("Method not supported");
It is possible to make table name empty if exception thrown.
val tableName = try {
metaData.getTableName(i)
} catch (e: Exception) {
""
}