簡體   English   中英

使用Visual Studio 2012的本地數據庫

[英]Local Database with Visual Studio 2012

我正在創建一個應用程序,我想使用存儲在客戶端本地計算機上的本地數據庫。 我正在討論是否應該使用SQLITE或者Visual Studio中有什么東西可以幫助我。 另一件事是我想在啟動應用程序時以編程方式在users目錄中創建數據庫。

我在網上看到了一些東西,但文章都是關於SQL Server的東西,而且我不想要這個應用程序。 所有數據都需要存儲在本地計算機上。

您可以使用SQL Server Compact ,它在Visual Studio中具有工具。 它與SQL Server的語法兼容,但將其數據存儲在本地文件中,您可以動態創建(例如,在app啟動時)。

您可以使用其網站提供的庫動態創建SQLite數據庫。 我在許多項目中使用它來獲取我的個人代碼,以及它在Data Explorer(IBM產品)的某些內部體系結構中使用。 一些示例C#創建數據庫文件:

        if (!Directory.Exists(Application.StartupPath + "\\data"))
        {
            Directory.CreateDirectory(Application.StartupPath + "\\data");
        }
        SQLiteConnection conGlobal;
        if (!File.Exists(dbGlobal))
        {
            conGlobal = new SQLiteConnection("Data Source=" + dbGlobal + ";New=True;Compress=True;PRAGMA synchronous = 1;PRAGMA journal_mode=WAL");
            conGlobal.SetExtendedResultCodes(true);
            firstRun = true;
        }
        else
        {
            conGlobal = new SQLiteConnection("Data Source=" + dbGlobal + ";Compress=True;PRAGMA synchronous = 1;PRAGMA journal_mode=WAL");
            conGlobal.SetExtendedResultCodes(true);
        }
        try
        {
            conGlobal.Open();
        }
        catch (Exception)
        {
            //do stuff
        }

如果將new = true作為連接字符串傳遞,則只需啟動與文件的連接即可創建它。 然后,您可以查詢它並獲得與任何數據庫一樣的結果。

您還可以使用SQLite-Shell或其他SQLite DB查看器密碼保護數據庫文件,以防止訪問它們。

有關在連接字符串中傳遞的pragma語句的更多信息,請參閱以下內容: http//www.sqlite.org/pragma.html

我不確定以編程方式(這可能就是你的意思,對吧?)創建數據庫,但SQL Server Compact Edition過去對我來說很適合簡單的應用程序。 它是嵌入式的,甚至以中等信任的方式運行。

暫無
暫無

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

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