8000 Support identifier clause for Databricks by PaulBurridge · Pull Request #6377 · sqlfluff/sqlfluff · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

Support identifier clause for Databricks #6377

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged

Conversation

PaulBurridge
Copy link
Contributor

Provides support for IDENTIFIER clause.

Brief summary of the change made

Supports IDENTIFIER(string or string expression) in stead of database, schema, table or view names as per [documentation].(https://docs.databricks.com/en/sql/language-manual/sql-ref-names-identifier-clause.html)

Are there any other side effects of this change that we should be aware of?

Not that I am aware of apologies if I have missed something as this is my first PR.

Pull Request checklist

  • Please confirm you have completed any of the necessary steps below.

  • Included test cases to demonstrate any code changes, which may be one or more of the following:

    • .yml rule test cases in test/fixtures/rules/std_rule_cases.
    • .sql/.yml parser test cases in test/fixtures/dialects (note YML files can be auto generated with tox -e generate-fixture-yml).
    • Full autofix test cases in test/fixtures/linter/autofix.
    • Other.
  • Added appropriate documentation for the change.

  • Created GitHub issues for any relevant followup/future enhancements if appropriate.

Copy link
Member
@alanmcruickshank alanmcruickshank left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think you've redefined a couple of objects unnecessarily - otherwise this looks good 👍 .

Thanks for the contribution

Comment on lines +376 to +391
class DatabaseReferenceSegment(ObjectReferenceSegment):
"""A reference to a database."""

type = "database_reference"


class TableReferenceSegment(ObjectReferenceSegment):
"""A reference to an table, CTE, subquery or alias."""

type = "table_reference"


class SchemaReferenceSegment(ObjectReferenceSegment):
"""A reference to a schema."""

type = "schema_reference"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think these need redefining? I can't see any edits vs the classess created in the ansi dialect, so no need to redefine. Unless I've missed something?

Copy link
Contributor Author
@PaulBurridge PaulBurridge Oct 21, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@alanmcruickshank

These were needed to inherit changes to ObjectReferenceSegment which has been updated, just tested and without these lines the tests fail.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

iiiiiineresting. Good catch. Not super helpful from a development point of view, but I guess that's what it is right now.

Thanks for the contribution!

Copy link
Contributor
github-actions bot commented Oct 20, 2024

Coverage Results ✅

Name    Stmts   Miss  Cover   Missing
-------------------------------------
TOTAL   18621      0   100%

236 files skipped due to complete coverage.

Copy link
Member
@alanmcruickshank alanmcruickshank left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@alanmcruickshank alanmcruickshank added this pull request to the merge queue Oct 21, 2024
Merged via the queue into sqlfluff:main with commit 6fb5a84 Oct 21, 2024
28 checks passed
@PaulBurridge PaulBurridge deleted the feature/identifier-databricks branch October 21, 2024 08:36
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.

2 participants
0