Skip to content

Commit 61a9200

Browse files
add refs, correct COLUMN_COLUMNS mappings
Signed-off-by: varun-edachali-dbx <varun.edachali@databricks.com>
1 parent 548e395 commit 61a9200

File tree

1 file changed

+22
-18
lines changed

1 file changed

+22
-18
lines changed

src/databricks/sql/backend/column_mapping.py

Lines changed: 22 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -18,16 +18,19 @@ class MetadataOp(Enum):
1818

1919

2020
# Mappings from column names to standard column names
21-
CATALOG_OP = {
21+
# ref: CATALOG_COLUMNS in JDBC: https://github.com/databricks/databricks-jdbc/blob/e3d0d8dad683146a3afc3d501ddf0864ba086309/src/main/java/com/databricks/jdbc/common/MetadataResultConstants.java#L219
22+
CATALOG_COLUMNS = {
2223
"catalog": "TABLE_CAT",
2324
}
2425

25-
SCHEMA_OP = {
26+
# ref: SCHEMA_COLUMNS in JDBC: https://github.com/databricks/databricks-jdbc/blob/e3d0d8dad683146a3afc3d501ddf0864ba086309/src/main/java/com/databricks/jdbc/common/MetadataResultConstants.java#L221
27+
SCHEMA_COLUMNS = {
2628
"databaseName": "TABLE_SCHEM",
2729
"catalogName": "TABLE_CATALOG",
2830
}
2931

30-
TABLE_OP = {
32+
# ref: TABLE_COLUMNS in JDBC: https://github.com/databricks/databricks-jdbc/blob/e3d0d8dad683146a3afc3d501ddf0864ba086309/src/main/java/com/databricks/jdbc/common/MetadataResultConstants.java#L224
33+
TABLE_COLUMNS = {
3134
"catalogName": "TABLE_CAT",
3235
"namespace": "TABLE_SCHEM",
3336
"tableName": "TABLE_NAME",
@@ -40,29 +43,30 @@ class MetadataOp(Enum):
4043
"REF_GENERATION_COLUMN": "REF_GENERATION",
4144
}
4245

43-
COLUMN_OP = {
46+
# ref: COLUMN_COLUMNS in JDBC: https://github.com/databricks/databricks-jdbc/blob/e3d0d8dad683146a3afc3d501ddf0864ba086309/src/main/java/com/databricks/jdbc/common/MetadataResultConstants.java#L192
47+
COLUMN_COLUMNS = {
4448
"catalogName": "TABLE_CAT",
4549
"namespace": "TABLE_SCHEM",
4650
"tableName": "TABLE_NAME",
47-
"columnName": "COLUMN_NAME",
51+
"col_name": "COLUMN_NAME",
4852
"dataType": "DATA_TYPE",
4953
"columnType": "TYPE_NAME",
5054
"columnSize": "COLUMN_SIZE",
5155
"bufferLength": "BUFFER_LENGTH",
5256
"decimalDigits": "DECIMAL_DIGITS",
5357
"radix": "NUM_PREC_RADIX",
54-
"nullable": "NULLABLE",
58+
"Nullable": "NULLABLE",
5559
"remarks": "REMARKS",
56-
"columnDef": "COLUMN_DEF",
57-
"sqlDataType": "SQL_DATA_TYPE",
58-
"sqlDatetimeSub": "SQL_DATETIME_SUB",
59-
"charOctetLength": "CHAR_OCTET_LENGTH",
60+
"columnType": "COLUMN_DEF",
61+
"SQLDataType": "SQL_DATA_TYPE",
62+
"SQLDatetimeSub": "SQL_DATETIME_SUB",
63+
"CharOctetLength": "CHAR_OCTET_LENGTH",
6064
"ordinalPosition": "ORDINAL_POSITION",
6165
"isNullable": "IS_NULLABLE",
62-
"scopeCatalog": "SCOPE_CATALOG",
63-
"scopeSchema": "SCOPE_SCHEMA",
64-
"scopeTable": "SCOPE_TABLE",
65-
"sourceDataType": "SOURCE_DATA_TYPE",
66+
"ScopeCatalog": "SCOPE_CATALOG",
67+
"ScopeSchema": "SCOPE_SCHEMA",
68+
"ScopeTable": "SCOPE_TABLE",
69+
"SourceDataType": "SOURCE_DATA_TYPE",
6670
"isAutoIncrement": "IS_AUTOINCREMENT",
6771
"isGenerated": "IS_GENERATEDCOLUMN",
6872
}
@@ -81,13 +85,13 @@ def normalise_metadata_result(result_set, operation: MetadataOp):
8185
# Select the appropriate mapping based on the operation
8286
mapping = None
8387
if operation == MetadataOp.CATALOGS:
84-
mapping = CATALOG_OP
88+
mapping = CATALOG_COLUMNS
8589
elif operation == MetadataOp.SCHEMAS:
86-
mapping = SCHEMA_OP
90+
mapping = SCHEMA_COLUMNS
8791
elif operation == MetadataOp.TABLES:
88-
mapping = TABLE_OP
92+
mapping = TABLE_COLUMNS
8993
elif operation == MetadataOp.COLUMNS:
90-
mapping = COLUMN_OP
94+
mapping = COLUMN_COLUMNS
9195

9296
if mapping is None:
9397
return

0 commit comments

Comments
 (0)