Показаны сообщения с ярлыком sqlite. Показать все сообщения
Показаны сообщения с ярлыком sqlite. Показать все сообщения

понедельник, 8 октября 2012 г.

SQLite objects created in a thread can only be used in that same thread

Объект соединения с базой данных использовался во всех потоках. В итоге получал данную ошибку:
ProgrammingError: SQLite objects created in a thread can only be used in that same thread.The object was created in thread id -1220073264 and this is thread id -1233679472

Решение:
conn = sqlite3.connect('checker.db', check_same_thread=False)
 

Замена Python 2.4 на Python 2.7. SQLite. CentOS

ИСПОЛЬЗУЙ VIRTUALENV!

-bash-3.2# uname -i
i386

-bash-3.2# cat /etc/redhat-release
CentOS release 5.7 (Final)

bash-3.2# python -V
Python 2.4

SQLite3 Autoincrement, schema, table_info

 Autoincrement
Тип данных не INT, а INTEGER
CREATE TABLE proxies (id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, proxy VARCHAR(16), status VARCHAR(10) DEFAULT 'good', last_used_time DATETIME DEFAULT NULL);


sqlite> pragma table_info(proxies)

0|id|INTEGER|1||1
1|proxy|VARCHAR(16)|0||0
2|status|VARCHAR(10)|0|'good'|0
3|last_used_time|DATETIME|0|NULL|0



sqlite> .schema proxies
CREATE TABLE proxies (id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, proxy VARCHAR(16), status VARCHAR(10) DEFAULT 'good', last_used_time DATETIME DEFAULT NULL);