Skip to content

Conversation

@Mytherin
Copy link
Collaborator

This PR adds support for case insensitive binding of column names, even when they are specifically constructed to have a case. The case insensitive binding only works if there are no conflicts, e.g. if a table has both the columns "Hello" and "HELLO", there is a conflict when trying to bind "hello", and as such the exact name must be specified. However, if the table only has the column "Hello", then "hello" has no conflict and will bind to it just fine.

This is a quality-of-life change that makes it easier to use column names with different casings, as previously any non-lowercase name had to be quoted to be used in SQL, i.e. SELECT Hello FROM table does not match the column "Hello". This now works, simplifying life somewhat. It also fixes the problems caused by #673.

…e specifically constructed to have a case, this fixes #673
@Mytherin Mytherin merged commit 3eb3a98 into master Jun 16, 2020
@hannes hannes deleted the caseinsensitivebinder branch June 19, 2020 04:36
@Alex-Monahan
Copy link
Contributor

This is fantastic! We will be providing DuckDB as a migration path from SQLite to our users, and this will greatly reduced the rework required! Will updating through Pip pull this change in?

@Alex-Monahan
Copy link
Contributor

I just saw the new release and that it included the Python package. Fantastic!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants