[issue12997] sqlite3: PRAGMA foreign_keys = ON doesn't work
Ned Deily n...@acm.org added the comment: Mark, you don't say what version of OS X or which Python you are using but, if you are using an Apple-supplied Python on 10.6 or 10.7 or if you are using python.org 64-bit/32-bit installers for 2.7 or 3.2, the Python standard library sqlite3 modules dynamically links to the system-supplied /usr/lib/libsqlite3.dylib. On 10.6.8 Snow Leopard that is 3.6.12. On Lion (10.7.2) that has been updated by Apple to 3.7.5. (BTW, the most recent 32-bit-only python.org installers for 3.2.x and 2.7.x statically link a version of 3.7.4 sqlite3 in order to work on older versions of OS X which have much older or even no system versions of sqlite3.) Can this issue be closed? -- nosy: +ned.deily ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue12997 ___ ___ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue12997] sqlite3: PRAGMA foreign_keys = ON doesn't work
Changes by Mark Bucciarelli m...@crosscutmedia.com: -- resolution: - invalid ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue12997 ___ ___ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue12997] sqlite3: PRAGMA foreign_keys = ON doesn't work
Changes by Ned Deily n...@acm.org: -- stage: - committed/rejected status: open - closed ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue12997 ___ ___ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue12997] sqlite3: PRAGMA foreign_keys = ON doesn't work
poq p...@gmx.com added the comment: sqlite3.version_info = (2, 6, 0) sqlite3.sqlite_version_info = (3, 7, 4) pysqlite2.version_info = (2, 6, 0) pysqlite2.sqlite_version_info = (3, 7, 4) -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue12997 ___ ___ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue12997] sqlite3: PRAGMA foreign_keys = ON doesn't work
Mark Bucciarelli m...@crosscutmedia.com added the comment: BAD : sqlite3.sqlite_version_info = (3, 6, 12) GOOD: sqlite3.sqlite_version_info = (3, 7, 4) GOOD: sqlite3.sqlite_version_info = (3, 7, 8) I guess this is the cause of the different behavior. sqlite_version_info is the version of the underlying sqlite3 database library. So, the sqlite3 is loading an older dynamic lib on my OSX. -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue12997 ___ ___ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue12997] sqlite3: PRAGMA foreign_keys = ON doesn't work
Mark Bucciarelli m...@crosscutmedia.com added the comment: Something strange is going on. I just built pysql 2.6.3 from source, and now my unit test gives the expected IntegrityError: foreign key constraint failed message. poq, what do you get when you run this script: import sqlite3 print sqlite3.version_info =, sqlite3.version_info print sqlite3.sqlite_version_info =, sqlite3.sqlite_version_info from pysqlite2 import dbapi2 as sqlite3 print pysqlite2.version_info =, sqlite3.version_info print pysqlite2.sqlite_version_info =, sqlite3.sqlite_version_info I get the following: sqlite3.version_info = (2, 6, 0) sqlite3.sqlite_version_info = (3, 6, 12) pysqlite2.version_info = (2, 6, 3) pysqlite2.sqlite_version_info = (3, 7, 8) -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue12997 ___ ___ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue12997] sqlite3: PRAGMA foreign_keys = ON doesn't work
poq p...@gmx.com added the comment: Works for me? $ python2.7 t.py Traceback (most recent call last): File t.py, line 13, in module con.execute(insert into track (artist_id) values (1)) sqlite3.IntegrityError: foreign key constraint failed $ python3.2 t.py Traceback (most recent call last): File t.py, line 13, in module con.execute(insert into track (artist_id) values (1)) sqlite3.IntegrityError: foreign key constraint failed -- nosy: +poq ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue12997 ___ ___ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue12997] sqlite3: PRAGMA foreign_keys = ON doesn't work
Mark Bucciarelli m...@crosscutmedia.com added the comment: huh. is it already on in your sqlite install? $ sqlite3 SQLite version 3.7.7.1 2011-06-28 17:39:05 Enter .help for instructions Enter SQL statements terminated with a ; sqlite pragma foreign_keys; 0 sqlite is what i get (it's off). -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue12997 ___ ___ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue12997] sqlite3: PRAGMA foreign_keys = ON doesn't work
poq p...@gmx.com added the comment: Nope. $ sqlite3 SQLite version 3.7.4 Enter .help for instructions Enter SQL statements terminated with a ; sqlite pragma foreign_keys; 0 sqlite $ python Python 2.7.1+ (r271:86832, Apr 11 2011, 18:13:53) [GCC 4.5.2] on linux2 Type help, copyright, credits or license for more information. import sqlite3 c = sqlite3.connect(':memory:') list(c.execute('pragma foreign_keys')) [(0,)] list(c.execute('pragma foreign_keys = on')) [] list(c.execute('pragma foreign_keys')) [(1,)] -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue12997 ___ ___ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue12997] sqlite3: PRAGMA foreign_keys = ON doesn't work
New submission from Mark Bucciarelli m...@crosscutmedia.com: If I read http://bugs.python.org/issue10740#msg132470 correctly, the foreign_keys PRAGMA is a no-op b/c The python sqlite module automatically commits open transactions when it encounters a DDL statement. Entering as a separate issue as I'm not sure solving 10740 is required to solve this one. -- components: None files: t.py messages: 144166 nosy: Mark.Bucciarelli priority: normal severity: normal status: open title: sqlite3: PRAGMA foreign_keys = ON doesn't work type: behavior versions: Python 2.7 Added file: http://bugs.python.org/file23177/t.py ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue12997 ___ ___ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue12997] sqlite3: PRAGMA foreign_keys = ON doesn't work
Changes by Ned Deily n...@acm.org: -- nosy: +ghaering ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue12997 ___ ___ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com