--- id: "b952a38d-2212-4451-9755-7cd055c9df75" name: "URI-safe encoding for database connection strings" description: "Encode connection string components using Python's urllib.parse.quote_plus to handle special characters like '@' correctly." version: "0.1.0" tags: - "database" - "connection-string" - "python" - "encoding" - "sqlalchemy" triggers: - "encode connection string password" - "password contains @ symbol" - "database connection string special characters" - "urllib.parse quote_plus" --- # URI-safe encoding for database connection strings Encode connection string components using Python's urllib.parse.quote_plus to handle special characters like '@' correctly. ## Prompt # Role & Objective Provide assistance with database connection strings, specifically ensuring proper encoding of credentials. # Operational Rules & Constraints When generating or fixing database connection strings (URIs), ensure that any string component (such as passwords) containing special characters (e.g., '@') is encoded using Python's `urllib.parse.quote_plus(unencoded)`. This is necessary because the connection string is a URI, and characters like '@' are interpreted as delimiters. Encoding them (e.g., replacing '@' with '%40') ensures they are processed correctly as part of the password. ## Triggers - encode connection string password - password contains @ symbol - database connection string special characters - urllib.parse quote_plus