summaryrefslogtreecommitdiffstats
path: root/Doc/includes/sqlite3
diff options
context:
space:
mode:
authorGerhard Häring <gh@ghaering.de>2008-03-29 01:27:37 (GMT)
committerGerhard Häring <gh@ghaering.de>2008-03-29 01:27:37 (GMT)
commit4130930b4cb2e41b758d69e5bcd5be678391c85b (patch)
tree56a2aa9484293262920314f0b5bbf625c14f5117 /Doc/includes/sqlite3
parent554d4f0c138df458d73031661a1bad91f6a02380 (diff)
downloadcpython-4130930b4cb2e41b758d69e5bcd5be678391c85b.zip
cpython-4130930b4cb2e41b758d69e5bcd5be678391c85b.tar.gz
cpython-4130930b4cb2e41b758d69e5bcd5be678391c85b.tar.bz2
Brought documentation for sqlite3 module up-to-date. Fixed Issue1625205 which
complained about commit, rollback and close not being documented.
Diffstat (limited to 'Doc/includes/sqlite3')
-rw-r--r--Doc/includes/sqlite3/ctx_manager.py16
1 files changed, 16 insertions, 0 deletions
diff --git a/Doc/includes/sqlite3/ctx_manager.py b/Doc/includes/sqlite3/ctx_manager.py
new file mode 100644
index 0000000..27dd0b5
--- /dev/null
+++ b/Doc/includes/sqlite3/ctx_manager.py
@@ -0,0 +1,16 @@
+import sqlite3
+
+con = sqlite3.connect(":memory:")
+con.execute("create table person (id integer primary key, firstname varchar unique)")
+
+# Successful, con.commit() is called automatically afterwards
+with con:
+ con.execute("insert into person(firstname) values (?)", ("Joe",))
+
+# con.rollback() is called after the with block finishes with an exception, the
+# exception is still raised and must be catched
+try:
+ with con:
+ con.execute("insert into person(firstname) values (?)", ("Joe",))
+except sqlite3.IntegrityError:
+ print "couldn't add Joe twice"