簡體   English   中英

如何在首次啟動.NET Windows應用程序時創建Access數據庫?

[英]How to create an Access database on first launch of my .NET Windows application?

我的.NET Windows應用程序首次運行時,如何創建Access數據庫? 在客戶端計算機上安裝.exe時,我想使用項目中使用的表創建數據庫,詢問db的路徑並創建應用程序中使用的db。

從提問者的評論到問題

有沒有建議使用我的應用程序中自動使用db創建所有表,或者我必須使用c#代碼以編程方式創建表

如果要避免編寫所有DDL代碼(CREATE TABLE,CREATE INDEX等)來“從頭開始”創建表結構,則可以在Access中創建數據庫和所有表等。 然后,您可以在.NET項目中將“空白”數據庫文件(表結構但無數據)添加為資源

當您的應用程序啟動時,它可以檢查數據庫的本地(非“空白”)副本的存在。 如果不存在,則可以將“空白”數據庫從應用程序的“資源”復制到硬盤上的所需位置。

例如,如果我創建一個名為“ resTestData.accdb”的“空白”數據庫並將其另存為項目中的File資源,則可以將其復制到本地硬盤中,如下所示:

string persistentDbLocation = @"C:\Users\Gord\Desktop\resTestUserData.accdb";
if (File.Exists(persistentDbLocation))
{
    Console.WriteLine("Local persistent copy of database already exists.");
}
else
{
    // "resTest" is the name I gave to my C# Project, hence resTest.Properties
    byte[] dbResource = resTest.Properties.Resources.resTestData;  // .accdb File Resource
    using (FileStream output = new FileStream(persistentDbLocation, FileMode.Create, FileAccess.Write))
    {
        output.Write(dbResource, 0, dbResource.Length);
    }
    Console.WriteLine("Local persistent copy of database saved to \"{0}\".", persistentDbLocation);
}

暫無
暫無

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

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