diff options
Diffstat (limited to 'sandbox/trigger-commit-fail.py')
-rw-r--r-- | sandbox/trigger-commit-fail.py | 44 |
1 files changed, 0 insertions, 44 deletions
diff --git a/sandbox/trigger-commit-fail.py b/sandbox/trigger-commit-fail.py deleted file mode 100644 index 0655c2f..0000000 --- a/sandbox/trigger-commit-fail.py +++ /dev/null @@ -1,44 +0,0 @@ -import psycopg2 -import traceback - -# Change the table here to something the user can create tables in ... -db = psycopg2.connect('dbname=test') - -cursor = db.cursor() - -print('Creating tables and sample data') - -cursor.execute(''' - CREATE TEMPORARY TABLE foo ( - id int PRIMARY KEY - )''') -cursor.execute(''' - CREATE TEMPORARY TABLE bar ( - id int PRIMARY KEY, - foo_id int, - CONSTRAINT bar_foo_fk FOREIGN KEY (foo_id) REFERENCES foo(id) DEFERRABLE - )''') -cursor.execute('INSERT INTO foo VALUES (1)') -cursor.execute('INSERT INTO bar VALUES (1, 1)') - -db.commit() - -print('Deferring constraint and breaking referential integrity') -cursor.execute('SET CONSTRAINTS bar_foo_fk DEFERRED') -cursor.execute('UPDATE bar SET foo_id = 42 WHERE id = 1') - -print('Committing (this should fail)') -try: - db.commit() -except: - traceback.print_exc() - -print('Rolling back connection') -db.rollback() - -print('Running a trivial query') -try: - cursor.execute('SELECT TRUE') -except: - traceback.print_exc() -print('db.closed:', db.closed) |