Форум сайта python.su
1. Как узнать версию sqlite, идущую с Python.
2. Есть ли возможность, включить из Python поддержку внешних ключей в sqlite3. Как написано тут: http://www.sqlite.org/foreignkeys.html#fk_enable
…
Вообщем скачал последнюю sqlite.dll.
conn = sqlite3.connect(database, detect_types=sqlite3.PARSE_DECLTYPES)
c = conn.cursor()
c.execute('PRAGMA foreign_keys;')
for row in c:
print(row[0])
c.execute('PRAGMA foreign_keys = ON;')
conn.commit()
c.execute('PRAGMA foreign_keys;')
for row in c:
print(row[0])
c.execute('delete from table1')
conn.commit()
conn.close()
sqlite3.IntegrityError: foreign key constraint failed
Отредактировано (Март 25, 2011 10:31:59)
Офлайн
А что вы делаете? Какие таблицы? В какой момент возникает ошибка?
Офлайн
Извиняюсь, эту ошибку я специально вызвал. Я просто хотел показать, что внешние ключи у меня заработали. Но я опасаюсь багов после замены библиотеки.
CREATE TABLE table1 ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL , col1 TEXT );
CREATE TABLE table2 ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL , FK_test INTEGER REFERENCES table1(id), col2 TEXT );
Офлайн