【问题标题】:sqlite3.connect not working with relative pathsqlite3.connect 不使用相对路径
【发布时间】:2019-03-14 06:53:54
【问题描述】:

使用相对路径时:出现错误 Sqlite3,OperationalError:无法打开数据库文件,

但使用绝对路径效果很好,下面是示例

#database_filepath = 'Data/DatabaseFile.db'

def load_data(database_filepath):

    con = sqlite3.connect(database_filepath) #not working
    #con = sqlite3.connect(os.path.abspath(database_filepath)) #working fine

    df = pd.read_sql_query('select * from someTable', con)

有更好的方法吗?

【问题讨论】:

  • 相对路径应该可以。请检查您的工作目录,是否有名为 Data 的子目录。

标签: python sqlite connect operationalerror


【解决方案1】:

您的代码在我的电脑上运行良好。请通过以下方式检查您的工作目录:

import os
print(os.path.abspath('.'))

然后检查是否存在子目录./Data

print(os.path.isdir('./Data'))

如果没有,你应该先创建这个目录。 sqlite 不会自动执行。

【讨论】:

  • 我已经验证数据目录和文件存在。
猜你喜欢
  • 1970-01-01
  • 2016-11-14
  • 1970-01-01
  • 2023-03-26
  • 1970-01-01
  • 2012-08-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多