{"categories":[{"label":"Database","url":"https://skillfed.io/packages/category/database/3"}],"enrichment":{"capability":"sqloxide parses SQL queries into a typed abstract syntax tree (AST) using Rust bindings for sqlparser-rs, and can reconstruct or rewrite SQL from the AST.","skillfed_tags":["sql-parsing","rust-bindings","ast-manipulation"],"use_cases":["Extract table and column dependencies from hundreds of auto-generated SQL files to build data lineage graphs.","Rewrite SQL queries programmatically by mutating the AST (e.g., renaming tables, uppercasing identifiers).","Parse and validate SQL syntax in data pipeline tools or ETL frameworks where speed matters.","Analyze complex nested queries and subselects where Python-native parsers fail or are too slow.","Parallelize SQL parsing across multiple threads in free-threaded Python without GIL contention."],"what_it_does":"sqloxide is a Python wrapper around the Rust sqlparser-rs library, providing fast SQL parsing without the GIL. It parses SQL into a typed AST matching the sqlparser-rs schema, and exposes APIs to reconstruct SQL from the AST or apply visitor-pattern mutations to expressions and table relations. The package was built to handle data lineage extraction across large codebases, particularly for complex queries with deep nesting, subselects, and table aliases\u2014problems where pure-Python parsers are either slow or inaccurate.\n\nThe package includes free-threaded Python support (3.13t, 3.14t), allowing parallel SQL parsing from multiple threads without locks. Benchmarks show it parses queries roughly 12\u00d7 faster than sqlglot, 50\u00d7 faster than sqlparse, and 100\u00d7 faster than moz-sql-parser. It has no runtime dependencies and ships precompiled wheels for common platforms and Python versions.","worth_installing":"Yes. sqloxide is actively maintained, has no runtime dependencies, offers significant speed advantages over pure-Python alternatives, and covers modern Python versions including free-threaded support. The MIT license is permissive. Install it if you need fast, accurate SQL parsing for lineage, rewriting, or analysis; skip it only if you need extensive documentation or are locked to older Python versions."},"id":"sqloxide","links":{"html":"https://skillfed.io/packages/sqloxide","md":"https://skillfed.io/packages/sqloxide.md","pypi":"https://pypi.org/project/sqloxide/"},"maintenance":{"status":"active"},"meta":{"latest_release":"2026-04-06","license_spdx":"MIT","license_treatment":"permissive","name":"sqloxide","python_support":"supports_current","summary":"Python bindings for sqlparser-rs"},"popularity":{"monthly_downloads":594012,"position":5847,"tier":"top_15000"},"security":{"n_vulnerabilities":0},"version":"0.61.1"}
