Mercurial > hg > sqlex
diff sqlex/main.py @ 3:5f1e1ac96aa7
stub works with SELECT
author | Jeff Hammel <k0scist@gmail.com> |
---|---|
date | Sat, 01 Apr 2017 09:19:22 -0700 |
parents | 63a75d318b06 |
children | b440206930ac |
line wrap: on
line diff
--- a/sqlex/main.py Sat Apr 01 08:44:42 2017 -0700 +++ b/sqlex/main.py Sat Apr 01 09:19:22 2017 -0700 @@ -8,8 +8,9 @@ # imports import argparse import os -import sqlite3 import sys +from .model import SQLEx + def ensure_dir(directory): """ensure a directory exists""" @@ -30,7 +31,9 @@ argparse.ArgumentParser.__init__(self, **kwargs) self.add_argument('db', help="sqlite `.db` file") - self.add_argument( + self.add_argument('--tables', '--list-tables', dest='list_tables', + action='store_true', default=False, + help="list tables and exit") self.options = None def parse_args(self, *args, **kw): @@ -43,7 +46,7 @@ """validate options""" try: - open(options.db) + open(options.db).close() except Exception as e: self.error("Could not open '{}': {}".format(options.db, e)) @@ -55,7 +58,13 @@ parser = SQLExParser() options = parser.parse_args(args) + # connect to database + db = SQLEx(options.db) + + if options.list_tables: + tables = db.tables() + print ('\n'.join(tables)) + return + if __name__ == '__main__': main() - -