簡體   English   中英

如何使用我的 Python3 fbs package package 一個 Sqlite3 數據庫?

[英]How do I package an Sqlite3 database with my Python3 fbs package?

我正在使用 FBS 構建 Python 應用程序,但其中一部分依賴於 SQLite3 數據庫。 如果沒有找到這個數據庫,我有代碼來創建這個數據庫,使用 try-catch 塊。

當我編譯后嘗試運行它時,它不僅找不到預先存在的SQLite3文件,而且也不會創建它。 它不顯示任何錯誤消息。

如果文件不存在,我嘗試使用以下代碼創建文件:

try:
    self.connection = sqlite3.connect(path)
    self.cursor = self.connection.cursor()
except:
    if not os.path.exists(path):
        # Try and make the .config directory
        try:
            os.makedirs(".config")
        except OSError as e:
            if e.errno != errno.EEXIST:
                raise

        # Create the datastore, and close it
        f = open(path, "w+")
        f.close()
        # And try connect to database again
        return self.__connect(path)
    else:
        print(f"No database exists, and could not create one.\nPlease create file in app directory called: {path}\nThen restart application.")
        raise

該代碼可以在 dev 中找到,但是一旦我將其編譯到 Mac 應用程序中,它就會拒絕查找或創建數據庫。

固定的。 如果有人有類似的問題,請使用內置的appctxt.get_resource(file_path)方法。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM