Skip to main content

Non-validating SQL parser

Project description

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

Visit the project page for additional information and documentation.

Example Usage

Splitting SQL statements:

>>> import sqlparse
>>> sqlparse.split('select * from foo; select * from bar;')
[u'select * from foo; ', u'select * from bar;']

Formatting statemtents:

>>> sql = 'select * from foo where id in (select id from bar);'
>>> print sqlparse.format(sql, reindent=True, keyword_case='upper')
SELECT *
FROM foo
WHERE id IN
  (SELECT id
   FROM bar);

Parsing:

>>> sql = 'select * from someschema.mytable where id = 1'
>>> res = sqlparse.parse(sql)
>>> res
(<Statement 'select...' at 0x9ad08ec>,)
>>> stmt = res[0]
>>> str(stmt)  # converting it back to unicode
'select * from someschema.mytable where id = 1'
>>> # This is how the internal representation looks like:
>>> stmt.tokens
(<DML 'select' at 0x9b63c34>,
 <Whitespace ' ' at 0x9b63e8c>,
 <Operator '*' at 0x9b63e64>,
 <Whitespace ' ' at 0x9b63c5c>,
 <Keyword 'from' at 0x9b63c84>,
 <Whitespace ' ' at 0x9b63cd4>,
 <Identifier 'somes...' at 0x9b5c62c>,
 <Whitespace ' ' at 0x9b63f04>,
 <Where 'where ...' at 0x9b5caac>)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

sqlparse-0.2.2.tar.gz (58.0 kB view details)

Uploaded Source

Built Distribution

sqlparse-0.2.2-py2.py3-none-any.whl (38.3 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file sqlparse-0.2.2.tar.gz.

File metadata

  • Download URL: sqlparse-0.2.2.tar.gz
  • Upload date:
  • Size: 58.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for sqlparse-0.2.2.tar.gz
Algorithm Hash digest
SHA256 d446296b2c26f9466860dd85fa32480bec523ab96bda8879262c38e8e8fbba21
MD5 ec1bab3438f358b6be72fc1912bbd648
BLAKE2b-256 55ce3944e990b03f80f36f0050b407ad46cde192a210d473f0d705b554bddd1d

See more details on using hashes here.

File details

Details for the file sqlparse-0.2.2-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for sqlparse-0.2.2-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 9b61c319b3c7b64681e1b4d554a9c3fe81ed52da00a901ccf3fe72962734e444
MD5 64527241b917df0dd7731d2e4c6013a7
BLAKE2b-256 2b2880966610baf3426be60d57341d55aab9ba8a45b0f68d63a382b4d1becc6f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page