我试图使用Python修改我的工作副本(subversion)。 我的Python是2.6.6,这是我的代码:
import sqlite3
conn = sqlite3.connect("wc.db")
cursor = conn.cursor()
record = cursor.execute("SELECT revision FROM NODES LIMIT 1")
print record
跑完后,我得到了:
traceback (most recent call last):
File "get_revision.py", line 5, in <module>
record = cursor.execute("SELECT revision FROM NODES LIMIT 1")
sqlite3.DatabaseError: malformed database schema (nodes_update_checksum_trigger) - near "OLD": syntax error
这是否意味着Python 2.6.6的sqlite3版本太旧了?我看了看:
Python 2.6.6 (r266:84297, Aug 24 2010, 18:46:32) [MSC v.1500 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import sqlite3
>>> sqlite3.version
'2.4.1'
>>>
答案 0 :(得分:1)
是的,我认为你是对的:我认为这意味着编写数据库文件的SQLite3版本比你试图阅读它的版本更新。
从Python阅读Chrome / Chromium“本地存储”时遇到了同样的问题。我的Python(版本3.5.2)副本可以读取本地存储文件(如果它是由Chrome或Chromium 55或更早版本编写的),但如果它是由Chromium版本57编写的,则不会读取,并且我得到的错误与你得到:“格式错误的数据库架构”