Modifying name validation to allow dashes #48
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Problem
Routine calls would fail when the database name contains dashes.
Root Cause
The built-in Python
isidentifier()function does not follow the same rules as MariaDB identifiers. Python's identifier rules are more restrictive and reject valid MariaDB names containing dashes.Solution
Added a helper function to validate database names that follows MariaDB's identifier rules instead of Python's.
Changes
isidentifier()with custom validation functionTesting
Example: Database name
my-app-dbnow works correctly instead of being rejected.