Mercurial > repos > iuc > sqlite_to_tabular
annotate query_tabular.py @ 0:859064f07be4 draft
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
| author | iuc | 
|---|---|
| date | Tue, 18 Jul 2017 09:07:26 -0400 | 
| parents | |
| children | c1b700bc0150 | 
| rev | line source | 
|---|---|
| 
0
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
1 #!/usr/bin/env python | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
2 | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
3 from __future__ import print_function | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
4 | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
5 import json | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
6 import optparse | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
7 import os.path | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
8 import sys | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
9 | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
10 from load_db import create_table | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
11 | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
12 from query_db import describe_tables, get_connection, run_query | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
13 | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
14 | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
15 """ | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
16 JSON config: | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
17 { tables : [ | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
18 { file_path : '/home/galaxy/dataset_101.dat', | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
19 table_name : 't1', | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
20 column_names : ['c1','c2','c3'], | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
21 pkey_autoincr : 'id' | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
22 comment_lines : 1 | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
23 unique: ['c1'], | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
24 index: ['c2', 'c3'] | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
25 }, | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
26 { file_path : '/home/galaxy/dataset_102.dat', | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
27 table_name : 'gff', | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
28 column_names : ['seqname',,'date','start','end'] | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
29 comment_lines : 1 | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
30 load_named_columns : True | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
31 filters : [{'filter': 'regex', 'pattern': '#peptide', | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
32 'action': 'exclude_match'}, | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
33 {'filter': 'replace', 'column': 3, | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
34 'replace': 'gi[|]', 'pattern': ''}] | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
35 }, | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
36 { file_path : '/home/galaxy/dataset_103.dat', | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
37 table_name : 'test', | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
38 column_names : ['c1', 'c2', 'c3'] | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
39 } | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
40 ] | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
41 } | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
42 """ | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
43 | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
44 | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
45 def __main__(): | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
46 # Parse Command Line | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
47 parser = optparse.OptionParser() | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
48 parser.add_option('-s', '--sqlitedb', dest='sqlitedb', default=None, | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
49 help='The SQLite Database') | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
50 parser.add_option('-j', '--jsonfile', dest='jsonfile', default=None, | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
51 help='JSON dict of table specifications') | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
52 parser.add_option('-q', '--query', dest='query', default=None, | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
53 help='SQL query') | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
54 parser.add_option('-Q', '--query_file', dest='query_file', default=None, | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
55 help='SQL query file') | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
56 parser.add_option('-n', '--no_header', dest='no_header', default=False, | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
57 action='store_true', | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
58 help='Include a column headers line') | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
59 parser.add_option('-o', '--output', dest='output', default=None, | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
60 help='Output file for query results') | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
61 (options, args) = parser.parse_args() | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
62 | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
63 # determine output destination | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
64 if options.output is not None: | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
65 try: | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
66 outputPath = os.path.abspath(options.output) | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
67 outputFile = open(outputPath, 'w') | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
68 except Exception as e: | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
69 exit('Error: %s' % (e)) | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
70 else: | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
71 outputFile = sys.stdout | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
72 | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
73 def _create_table(ti, table): | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
74 path = table['file_path'] | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
75 table_name =\ | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
76 table['table_name'] if 'table_name' in table else 't%d' % (ti + 1) | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
77 comment_lines =\ | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
78 table['comment_lines'] if 'comment_lines' in table else 0 | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
79 comment_char =\ | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
80 table['comment_char'] if 'comment_char' in table else None | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
81 column_names =\ | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
82 table['column_names'] if 'column_names' in table else None | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
83 if column_names: | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
84 load_named_columns =\ | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
85 table['load_named_columns']\ | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
86 if 'load_named_columns' in table else False | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
87 else: | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
88 load_named_columns = False | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
89 unique_indexes = table['unique'] if 'unique' in table else [] | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
90 indexes = table['index'] if 'index' in table else [] | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
91 filters = table['filters'] if 'filters' in table else None | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
92 pkey_autoincr = \ | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
93 table['pkey_autoincr'] if 'pkey_autoincr' in table else None | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
94 create_table(get_connection(options.sqlitedb), path, table_name, | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
95 pkey_autoincr=pkey_autoincr, | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
96 column_names=column_names, | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
97 skip=comment_lines, | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
98 comment_char=comment_char, | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
99 load_named_columns=load_named_columns, | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
100 filters=filters, | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
101 unique_indexes=unique_indexes, | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
102 indexes=indexes) | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
103 | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
104 if options.jsonfile: | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
105 try: | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
106 with open(options.jsonfile) as fh: | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
107 tdef = json.load(fh) | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
108 if 'tables' in tdef: | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
109 for ti, table in enumerate(tdef['tables']): | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
110 _create_table(ti, table) | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
111 except Exception as e: | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
112 exit('Error: %s' % (e)) | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
113 | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
114 query = None | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
115 if options.query_file is not None: | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
116 with open(options.query_file, 'r') as fh: | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
117 query = '' | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
118 for line in fh: | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
119 query += line | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
120 elif options.query is not None: | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
121 query = options.query | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
122 | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
123 if query is None: | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
124 try: | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
125 describe_tables(get_connection(options.sqlitedb), outputFile) | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
126 except Exception as e: | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
127 exit('Error: %s' % (e)) | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
128 else: | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
129 try: | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
130 run_query(get_connection(options.sqlitedb), query, outputFile, | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
131 no_header=options.no_header) | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
132 except Exception as e: | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
133 exit('Error: %s' % (e)) | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
134 | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
135 | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
136 if __name__ == "__main__": | 
| 
 
859064f07be4
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/query_tabular commit 74915fc9cee746bbce1c4b507e13231259de177d
 
iuc 
parents:  
diff
changeset
 | 
137 __main__() | 
