diff options
Diffstat (limited to 'Doc/includes/sqlite3/complete_statement.py')
-rw-r--r-- | Doc/includes/sqlite3/complete_statement.py | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/Doc/includes/sqlite3/complete_statement.py b/Doc/includes/sqlite3/complete_statement.py new file mode 100644 index 0000000..cd38d73 --- /dev/null +++ b/Doc/includes/sqlite3/complete_statement.py @@ -0,0 +1,30 @@ +# A minimal SQLite shell for experiments + +import sqlite3 + +con = sqlite3.connect(":memory:") +con.isolation_level = None +cur = con.cursor() + +buffer = "" + +print("Enter your SQL commands to execute in sqlite3.") +print("Enter a blank line to exit.") + +while True: + line = input() + if line == "": + break + buffer += line + if sqlite3.complete_statement(buffer): + try: + buffer = buffer.strip() + cur.execute(buffer) + + if buffer.lstrip().upper().startswith("SELECT"): + print(cur.fetchall()) + except sqlite3.Error as e: + print("An error occurred:", e.args[0]) + buffer = "" + +con.close() |