Superset 6.0: PostgreSQL Case-Sensitive Column Names Causing Errors (Auto-Quote Identifiers Support?) #36243
Replies: 1 comment
-
|
PostgreSQL treats unquoted identifiers as lowercase, so if your column names are mixed-case or uppercase, you must use double quotes to preserve their case in queries. Superset's SQL generator previously didn't always quote identifiers, which caused the kind of errors you're seeing. A recent fix (PR #35350) was merged into Superset's master/v6.x branch. This update ensures that, for databases like PostgreSQL, each part of the identifier (catalog, schema, table, and column) is quoted separately using SQLAlchemy's quoting logic. This should resolve most issues with case-sensitive column names in generated SQL. If you're still seeing errors, double-check that your Superset build includes this fix (merged October 2025). If not, you can manually quote column names in SQL Lab (e.g., If the problem persists even with the latest code, there may be a regression or a specific edge case—let us know the details so we can help further. References:
To reply, just mention @dosu. How did I do? Good | Irrelevant | Incorrect | Verbose | Hallucination | Report 🐛 | Other |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
Hi team,
I recently upgraded Superset to the latest master / v6.x build and I'm experiencing an issue with PostgreSQL datasets that contain mixed-case or uppercase column names (for example: D1DATE, D2EL01, etc.).
Superset automatically generates SQL without quotes, so PostgreSQL lowercases identifiers. This results in errors like:
"SELECT D1DATE FROM my_table"
Error: column "d1date" does not exist
PostgreSQL rewrites it to d1date and the query fails.
Any help will be appriciated.
Beta Was this translation helpful? Give feedback.
All reactions