繁体   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