簡體   English   中英

FireDAC SQLite備份不保存任何數據

[英]FireDAC SQLite backup saves no data

執行以下代碼時,數據庫文件僅具有表名。 似乎沒有字段名或實際數據被復制。

procedure TdbModule.BackupDB();
begin
  ADConnection1.Connected := True;
  ADSQLiteBackup1.DatabaseObj := ADConnection1.CliObj;
  ADSQLiteBackup1.DestDatabase := 'd:\dan.sdb';
  ADSQLiteBackup1.Backup;
end;

正在創建dan.sdb文件,僅缺少任何備份數據。 該應用程序顯示數據並正常運行。

有想法嗎?

您是否有一個SQLite內存數據庫,並使用FireDAC LocalSQL將多個TADMemTable /其他數據集連接到該數據庫?

如果是,則備份將不會復制數據集的內容,因為它們表示為SQLite虛擬表。 備份僅復制常規表的內容。

解決方法是:

  • 對每個ADMemTable執行CREATE TABLE ... AS SELECT ...命令,以將它們復制到常規表中;
  • 將ADLocalSQL.Active設置為False;
  • 執行備份。

暫無
暫無

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

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