Skip to content

andialbrecht/sqlparse

Folders and files

NameName
Last commit message
Last commit date

Latest commit

a801100 · Feb 16, 2025
Dec 10, 2024
Jul 12, 2024
Aug 31, 2024
Feb 16, 2025
Feb 16, 2025
Mar 16, 2024
Nov 14, 2024
Mar 15, 2024
Nov 14, 2024
Dec 10, 2024
Aug 6, 2023
Jun 4, 2016
Jul 15, 2024
Mar 15, 2024
Aug 6, 2023
Oct 26, 2015
Nov 14, 2024

python-sqlparse - Parse SQL statements

buildstatus coverage docs packageversion

sqlparse is a non-validating SQL parser for Python. It provides support for parsing, splitting and formatting SQL statements.

The module is compatible with Python 3.8+ and released under the terms of the New BSD license.

Visit the project page at https://github.com/andialbrecht/sqlparse for further information about this project.

Quick Start

$ pip install sqlparse
>>> import sqlparse

>>> # Split a string containing two SQL statements:
>>> raw = 'select * from foo; select * from bar;'
>>> statements = sqlparse.split(raw)
>>> statements
['select * from foo;', 'select * from bar;']

>>> # Format the first statement and print it out:
>>> first = statements[0]
>>> print(sqlparse.format(first, reindent=True, keyword_case='upper'))
SELECT *
FROM foo;

>>> # Parsing a SQL statement:
>>> parsed = sqlparse.parse('select * from foo')[0]
>>> parsed.tokens
[<DML 'select' at 0x7f22c5e15368>, <Whitespace ' ' at 0x7f22c5e153b0>, <Wildcard '*' … ]
>>>

Links

Project page
https://github.com/andialbrecht/sqlparse
Bug tracker
https://github.com/andialbrecht/sqlparse/issues
Documentation
https://sqlparse.readthedocs.io/
Online Demo
https://sqlformat.org/

sqlparse is licensed under the BSD license.

Parts of the code are based on pygments written by Georg Brandl and others. pygments-Homepage: http://pygments.org/