{"library":"sqlvalidator","title":"SQLValidator","type":"library","description":"SQLValidator is a Python library (current version 0.0.20) for formatting, syntactic, and semantic validation of SQL queries. It's built on `sqlparse` and provides a simple `SQLValidation` object and a helper `validate_sql` function. Releases are typically driven by new SQL feature support and bug fixes, with minor versions often adding functionality.","language":"python","status":"active","last_verified":"Fri Apr 17","install":{"commands":["pip install sqlvalidator"],"cli":null},"imports":["from sqlvalidator import SQLValidation","from sqlvalidator import validate_sql"],"auth":{"required":false,"env_vars":[]},"links":{"homepage":null,"github":"https://github.com/David-Wobrock/sqlvalidator","docs":null,"changelog":null,"pypi":"https://pypi.org/project/sqlvalidator/","npm":null,"openapi_spec":null,"status_page":null,"smithery":null},"quickstart":{"code":"from sqlvalidator import SQLValidation\n\n# Example 1: Basic syntax validation and formatting\nsql_query_1 = \"SELECT * FROM users WHERE id = 1 AND name = 'Alice'\"\nsql_obj_1 = SQLValidation(sql_query_1)\n\nprint(f\"Query 1 validation result: {sql_obj_1.validate()}\")\nprint(f\"Query 1 errors: {sql_obj_1.errors}\")\nprint(f\"Formatted Query 1:\\n{sql_obj_1.format()}\")\n\n# Example 2: Semantic validation with table schema\nsql_query_2 = \"SELECT first_name, email FROM employees WHERE department_id = 10\"\nsql_obj_2 = SQLValidation(sql_query_2)\n\n# Define table schema for semantic validation\ntables_schema = {\n    'employees': ['id', 'first_name', 'last_name', 'email', 'department_id'],\n    'departments': ['id', 'name']\n}\n\nsql_obj_2.validate(tables=tables_schema)\nprint(f\"\\nQuery 2 validation result (semantic): {sql_obj_2.is_valid}\")\nprint(f\"Query 2 errors (semantic): {sql_obj_2.errors}\")\n\n# Example 3: Invalid query\ninvalid_sql = \"SELECT FROM users WHERE id = 1\"\nsql_obj_3 = SQLValidation(invalid_sql)\nsql_obj_3.validate()\nprint(f\"\\nInvalid query errors: {sql_obj_3.errors}\")","lang":"python","description":"Demonstrates basic syntactic validation, formatting, and more advanced semantic validation by providing a table schema. The `is_valid` property and `errors` list provide detailed results.","tag":null,"tag_description":null,"last_tested":null,"results":[]},"compatibility":null}