PC启动sqlite3时发生Python错误。操作错误:无法打开数据库文件

2024-04-25 14:11:00 发布

您现在位置:Python中文网/ 问答频道 /正文

我制作了一个python脚本,它应该在我启动电脑时启动。为了做到这一点,我创建了一个简单的.bat文件like this.,但现在我遇到了一个问题,因为为什么windows无法在启动时打开数据库连接。我这样试过:

conn = sqlite3.connect('DB\Todos.db')

当我正常执行baatch文件时,一切正常,但当windows在启动时启动它时,会出现以下错误:

Traceback (most recent call last):

File "Path to my file", line 41, in <module>
conn = sqlite3.connect('DB\Todos.db')
sqlite3.OperationalError: unable to open database file    

当然,“我的文件路径”是正常路径。 谢谢你的帮助


Tags: 文件to路径脚本dbwindowsconnectconn
1条回答
网友
1楼 · 发布于 2024-04-25 14:11:00

当然,这表明系统找不到指定的文件,这就是他们无法打开数据库文件的原因。如果您的程序在DB文件夹中,您可以使用 conn = sqlite3.connect('Todos.db')。而且,出于个人目的,最推荐的if是使用整个路径,如conn = sqlite3.connect('X:\MyDB\SQLite\Todos.db')。输出错误sqlite3.OperationalError: unable to open database file 通常从以下错误开始:

  • 系统找不到该文件
  • 系统无法打开该文件
  • 系统没有该文件的权限(或者您没有)
  • 系统没有读取权限

如果无法打开并找到文件,请将脚本或目录移动到文件所在的位置。它节省了代码,比插入完整路径要好得多,因为如果你把程序交给某人,很难说出程序在哪里,他/她可能会更改代码,等等。但是如果所有内容都在同一个文件夹中,这就容易多了

如果无法打开文件,则可能已损坏;该程序无法读取该文件的文本,或者不是他识别的程序。或者你不付钱

如果您没有该文件的权限,则需要以管理员身份启动该程序。如果该程序不起作用,请在internet上搜索如何授予该文件的权限。(yourext)

至少,读取权限在文件上是正确的。有些文件有一个属性“-r”,只读文件属性,在文件文件夹中键入attrib -r -s -h yourfile.ext后,通过具有管理员权限的提示(CMD)将其删除,并删除只读、系统和隐藏文件属性

如果一切都不正常,则文件已损坏。对不起

相关问题 更多 >

    热门问题