]> git.phdru.name Git - sqlconvert.git/blob - scripts/print_subtree.py
Add some initial code and a small demo script
[sqlconvert.git] / scripts / print_subtree.py
1 #! /usr/bin/env python
2
3 import sys
4 from sqlparse import parse
5 from mysql2sql.process_tokens import requote_names
6 from mysql2sql.print_tokens import print_tokens, print_subtree
7
8
9 def test():
10     for query in (
11         "SELECT * FROM `mytable`; -- line-comment",
12         "INSERT into /* inline comment */ mytable VALUES (1, 'one')",
13         "/*! directive*/ INSERT INTO `MyTable` (`Id`, `Name`) "
14         "VALUES (1, 'one')"
15     ):
16         print "----------"
17         for parsed in parse(query):
18             requote_names(parsed)
19             print_tokens(parsed)
20             print_subtree(parsed)
21     print "----------"
22
23
24 def main(query):
25     parsed = parse(query)[0]
26     requote_names(parsed)
27     print_tokens(parsed)
28     print_subtree(parsed)
29
30 if __name__ == '__main__':
31     if len(sys.argv) != 2:
32         sys.exit("Usage: %s [-t | sql_query_string]" % sys.argv[0])
33     if sys.argv[1] == '-t':
34         test()
35     else:
36         query = sys.argv[1]
37         main(query)