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.0.tar.gz (52.6 kB view details)

Uploaded Source

Built Distribution

sqlparse-0.2.0-py2.py3-none-any.whl (38.1 kB view details)

Uploaded Python 2 Python 3

File details

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

File metadata

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

File hashes

Hashes for sqlparse-0.2.0.tar.gz
Algorithm Hash digest
SHA256 7fac8d39ac543499b191be19e811ff275f2df0d45c4ba5fc24850aa883ac2060
MD5 d0dde71546b4a37e72c0c607252ad942
BLAKE2b-256 48e4ecd908ef40a9d0e78fc40f3abd2f329dd96b82402fee07f14dbf69948f1b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for sqlparse-0.2.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 9838667b3d7fc96976ee5711ba654e49028e80f95f7b1849cb57474dba499deb
MD5 ab89816d24b5d730600b25786a52abb0
BLAKE2b-256 c5a210fd705dd8f6630db66af47aacf624ab33a78680d4e236c50db9782dd5de

See more details on using hashes here.

Supported by

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