我想打开一个 sqlite3 数据库,并立即检查它是否以只读方式打开。因为我知道我需要写入它,所以我想在启动时立即返回一个错误,而不必等到程序第一次尝试写入时再返回。
我看到有一个sqlite3 C API function sqlite3_db_readonly() .是否可以从 Python API 访问此函数?或者是否有其他方法可以通过 Python API 检查数据库是否为只读?
请您参考如下方法:
除了提到的其他可能性之外,您可以尝试写入它。例如,如果数据库的 user_version 为 0(除非您更改它,否则它将为 0),发出 pragma user_version=0;。如果数据库是可写的,这将没有效果,但如果数据库是只读的,则会导致错误。
