C# 与客户端应用程序一起打包的最佳数据库

C# 与客户端应用程序一起打包的最佳数据库,c#,sql,C#,Sql,我正在为一位客户写一份新的申请书。我将用C#写它。我的问题是,我应该使用什么数据库?我不希望客户端必须安装数据库。我只想将数据库文件(希望重命名为客户无法识别的文件)安装在应用程序所在的文件夹中。比如将MDF文件放入文件夹。那么我应该用什么呢?SQL Express?MySQL?SQLite?PostgreSQL 另外,我希望它能够处理存储过程 这是一个小应用程序,我真的需要一个轻量级的数据库来处理一些数据 谢谢。SQLite易于使用、配置和部署。可以在客户端计算机上使用不需要安装的单个DLL。

我正在为一位客户写一份新的申请书。我将用C#写它。我的问题是,我应该使用什么数据库?我不希望客户端必须安装数据库。我只想将数据库文件(希望重命名为客户无法识别的文件)安装在应用程序所在的文件夹中。比如将MDF文件放入文件夹。那么我应该用什么呢?SQL Express?MySQL?SQLite?PostgreSQL

另外,我希望它能够处理存储过程

这是一个小应用程序,我真的需要一个轻量级的数据库来处理一些数据


谢谢。

SQLite易于使用、配置和部署。可以在客户端计算机上使用不需要安装的单个DLL。

如何


完全与您的Microsoft生态系统集成。不过…

我们用于远程部署站点的另一个产品来自SyBase Advantage数据库服务器。它也适用于DLL,但对于C#,只需安装.Net提供程序元素即可

这是基于终端机器不允许有任何“服务”运行,并且所有机器都将被“锁定”,因此无法安装此类“服务器”产品。我还考虑了SQLite,实际上做了一些比较,在父表中填充了几个表,其中大约有50000条记录,在子表中显然有更多记录。我们运行了一些性能测试,发现Advantage数据库服务器实际上在性能方面更好


我们还需要基于可能的网络“共享”驱动器处理数据的能力,这也没有任何困难,只是将连接路径更改为共享位置的连接路径,一切都很好。

这可能会关闭,因为不喜欢基于意见的问题。但在此之前,我发现SQLite非常易于使用。我自己也在寻找一个零配置、无需安装a-db-server的解决方案,我使用了sqlite。我也涉猎过“SQL Server compact”,这可能也不错。我的观点是SQL Express。它与所有连接器类一起安装。我连接到Postgres、MySQl和SQL server,SQL是最稳定和最少的依赖项。你至少应该定义一些标准。所有嵌入式数据库都非常相似。我建议使用相同的。firefox有一个插件,允许你打开和修改sqlite数据库。本质上,它是sqlite的一个小型sql管理工作室。我发现它有时很有用。