在本地使用数据库时应该首选哪个数据库 - Access DB 或 Sql Server DB? [关闭]
Posted
技术标签:
【中文标题】在本地使用数据库时应该首选哪个数据库 - Access DB 或 Sql Server DB? [关闭]【英文标题】:Which database should be preferable when using database locally- Access DB or Sql Server DB? [closed] 【发布时间】:2014-10-29 07:56:38 【问题描述】:我正在创建一个 Windows 窗体 应用程序。这里我只需要创建一个非常简单的数据库表。一些行将在运行时动态添加到表中。该应用程序将在本地(离线)使用。在这种情况下,哪个数据库更可取 - Microsoft Access Db 或 Sql Server Db??
或者没有数据库还有其他更好的解决方案吗??
【问题讨论】:
显然 Sql Server 是更好的选择 你能解释一下为什么吗? @AnikIslamAbhi 您可以使用sql事务,您可以存储大量数据,tsql等在Microsoft Acess中无法使用 嗯,海报提到了“非常简单的表格”和“一些行”要添加。听起来他甚至可能不需要任何数据库开销,但只需一个文件(XML 左右)就足够了。 (p)LINQ 仍然可以轻松访问他的数据... Access 支持事务和回滚。问题可能集中在必须安装整个 sql server 系统才能使用一个简单的小表,这不仅是一个支持问题,而且可能是矫枉过正。我会考虑 SQL 的精简版,因为它是一个基于文件的数据库,与 SQL 服务器兼容。 【参考方案1】:Microsoft Access Db --> 如果你不需要复杂的操作,不需要函数或在数据库中存储或创建类型,你不需要安装 sql server 运行时。
Sql Server Db --> 如果你想用数据获取所有特性。
希望能帮到你解答
MS 访问
列表项 列表项 列表项 基于文件 免费的可分发运行时(2007 或更高版本) RAD 工具(表单/报表设计器) 使用 Jet SQL 最大文件大小 2GBSQL Server Express
客户端/服务器模型 免费 没有 RAD 工具 使用 Transact-SQL 最大数据库大小 4GB(SSE R2 为 10GB),最大一个物理 CPUSQL Server Express vs MS Access
【讨论】:
【参考方案2】:有一篇不错的文章here
在我的脑海中,这个小建议可能会有所帮助。
考虑到这些 -
您的数据真的很小吗?
如果它会非常少,data serialization 考虑为简单的 XML 或二进制文件。
对于大量数据,我认为SQL Server
是绝对的选择。
或者,如果您认为它既不大也不小,请尝试SQLite
您的应用程序将来是否会扩大数据需求?
如果是这样,请尝试坚持SQL
相关的解决方案。
但是,您仍然可以在大多数情况下使用 SQL Server。
【讨论】:
【参考方案3】:我建议你两个都不去。
使用SQLite -Freeware- :
SQLite 是一个软件库,它实现了一个独立的、 无服务器、零配置、事务性 SQL 数据库引擎。 SQLite 是世界上部署最广泛的 SQL 数据库引擎。 SQLite 的源代码在公共领域。
没有复杂的本地安装,也没有开销。每个数据库一个文件。
Nuget 包:LINK
我正在与 DAPPER 合作将它用于像您这样的项目,并且很喜欢它。
看看这个SQLite + Dapper = Simple Data Access Layer
【讨论】:
【参考方案4】:另一个很好的解决方案是VistaDB
Microsoft has worked hard to make .NET and SQL Server a powerful combination - and VistaDB brings that capability to a small, easy to deploy package. Instead of having to ship a large installation which has to be set up independently for your application to work you can just ship 2 MB of extra assemblies with your .NET application. It's easy to make applications that start with VistaDB and scale up with SQL Server, all from a common codebase.
请注意,相对于 SQL server express\sqlite,VistaDB 不是免费软件
祝你好运!
【讨论】:
以上是关于在本地使用数据库时应该首选哪个数据库 - Access DB 或 Sql Server DB? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章
C ++将向量传递给函数:引用与指针,哪个是首选? [复制]