**已关闭。**此问题正在寻求书籍、工具、软件库等的建议。它不符合Stack Overflow guidelines。目前不接受答复。
我们不允许问题寻求书籍,工具,软件库等的建议。您可以编辑问题,以便可以用事实和引用来回答。
7年前关闭。
Improve this question
你能推荐一个轻量级的SQL数据库,它不需要安装在客户端计算机上就可以工作,并且可以从.NET应用程序轻松访问?只需要基本的SQL功能。
现在我在简单的项目中使用Access数据库,并将.MDB和.EXE文件一起分发。寻找任何替代品。
7条答案
按热度按时间vd2z7a6w1#
这取决于你说的轻量级是什么意思。容易RAM?或者更轻的db文件?还是打火机连接到db?还是更少的文件?我将给予我所知道的一个比较:
数据库为1个表,具有2列和2行。对db的大小持保留态度,因为随着进一步的使用,db可能会以不同的方式增长。例如,
SqlServerCe
虽然最初是64 KB,但在添加了几百条记录后,它根本没有增长,而VistaDb
则从48 KB轻松增长到72 KB再到140 KB。SQLite在这方面是最好的,它从最低开始,线性增长。一些轶事:我有更好的性能使用SqlServerCe与工厂设置,这意味着它最容易得到启动没有任何配置,而我发现火鸟有点难得到它开始,由于缺乏在线材料。据我所知,Firebird具有最广泛的标准sql兼容性。虽然VistaDb是用完全托管的C#编写的,这意味着它可以与应用程序的程序集合并为一个文件,但对我来说似乎是最慢的。考虑到性能、易用性和大小,我选择了SQLite。SqlServerCe将是我的第二选择。
简而言之,每一个都有其优点和缺点。再一次,对我的咆哮持保留态度,这只是我的个人经历。
c9x0cxw02#
查看SQLite,它是一个软件库,实现了一个独立的、无服务器的、零配置的事务性SQL数据库引擎。
它有许多wrappers for .NET
1sbrub3j3#
SQL Server 3.5/2008 Compact Edition是什么?一个简洁的嵌入式版本的SQL Server。
http://www.microsoft.com/Sqlserver/2008/en/us/compact.aspx
在.NET上运行得很好,当然,所有常规的SQL Server工具和脚本都运行得很好。
neekobn84#
如果你是用. NET写的,你可以看看VistaDB。它是100%托管代码,包含真正的引用完整性,tsql存储过程,clr过程,以及更多在一个单一的程序集中,您可以xcopy部署。
VistaDB在共享主机asp.net站点中以中等信任运行,也可以在Active Directory域中作为访客(没有本地权限)运行。
在部署引擎的计算机上不需要注册表或其他配置设置,并且运行时是免版税的。
32/64位支持包括在单个组件中。具有非托管代码的混合模式引擎通常需要提供多个版本的非托管代码,以支持32位和64位,或者针对特定的CPU目标进行重新编译。
有关详细信息,请参阅Advantages of VistaDB SO线程。
http://www.vistadb.net
mutmk8jj5#
SQLite很棒。
请查看Firebird embedded。如果将来有多个用户需要访问数据库,这可能是一个更好的选择。
bejyjqdl6#
您可以将数据存储为JSON文件。如果您需要它是独立的,则有IODB和LiteDB等dll解决方案
4uqofj5v7#
SQLite将是你所追求的