簡體   English   中英

以編程方式從生產數據庫創建空白數據庫

[英]create a blank database from a production database programmatically

為了進行軟件測試,我想創建一個生產數據庫的無菌克隆(所有數據都被清空)。 這樣,我可以每次對一組已知記錄運行單元測試。 我正在嘗試嘗試在單元測試本身中以編程方式進行此操作,因此我可以確保表格完全包含功能測試所需的測試數據。

我發現以下有關在C#中創建Access數據庫的信息 注意:我知道Access可能不是最好的解決方案,但是已經足夠好了!

我想知道的是,有沒有一種方法可以使用TableAdapters(也許)在空白的Access數據庫文件中復制生產數據庫架構(不包含任何數據)?

做這個:

  • 創建訪問文件的副本; 生產->測試
  • 連接到測試數據庫
  • 枚舉數據庫中的所有表
  • 對所有表運行DELETE * FROM [table] 如果您有FK依賴項,請運行幾次,直到沒有錯誤-或按注釋所示TRUNCATE [table]
  • 壓縮數據庫

我在Access方面經驗不足,但是通常您會為此創建一個CREATE腳本。 大多數數據庫工具都具有創建此類腳本的功能。 這樣的腳本基本上是一組創建所有對象(例如數據庫,視圖)的SQL語句。

搜索CREATE腳本和Access將為您提供一些起點

我對Access作為生產數據庫有不好的經驗。 我不推薦。 要么使用SQLite要么使用Firebird。

其次,是的,您可以使用TableAdapters。 您需要為每個數據庫創建兩個連接。 但是我認為可能有工具可以做到這一點。

編輯**

數據庫有多大? 對於高達4GB的空間,Oracle Express Edition可能會有所幫助。 同樣,從Oracle克隆到Oracle也很容易。

暫無
暫無

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

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