在本地使用数据库时,哪个数据库应该更可取 - Access DB或Sql Server DB?

时间:2014-10-29 07:56:38

标签: c# asp.net sql-server ms-access oledb

我正在创建一个 Windows窗体应用程序。在这里,我只需要创建一个非常简单的数据库表。某些行将在运行时动态添加到表中。该应用程序将在本地(离线)使用。在这种情况下,哪个数据库可以更好 - Microsoft Access Db Sql Server Db ??

或者没有数据库还有其他更好的解决方案吗?

4 个答案:

答案 0 :(得分:1)

Microsoft Access Db - >如果你不需要复杂的操作而不需要函数或者在数据库中存储或创建类型,那将是很好的,你不需要安装sql server运行时。

Sql Server Db - >如果你想获得数据的所有功能。

我希望我帮助你回答

MS Access

  • 列表项
  • 列表项
  • 列表项
  • 基于文件
  • free distributable runtime(2007或更高版本)
  • RAD工具(表单/报表设计器)
  • 使用Jet SQL
  • 最大文件大小2GB

SQL Server Express

  • 客户端/服务器型号
  • 自由
  • 没有RAD工具
  • 使用Transact-SQL
  • 最大数据库大小4GB(SSE R2为10GB),最多一个物理CPU

SQL Server Express vs MS Access

答案 1 :(得分:1)

有一篇很好的文章here

在我的头脑中,这个小小的建议可能会有所帮助。

考虑这些因素 -

  1. 您的数据是否真的很小? 如果它会非常少,< 10 KB。尝试将data serialization考虑为简单的XML或二进制文件。 对于大量数据,SQL Server是我认为的明确选择。 或者,如果您认为它既不大也不小,请尝试SQLite

  2. 您的应用程序将来是否会扩展数据要求? 如果是这样,请尝试坚持SQL相关解决方案。

  3. 但是,在大多数情况下,您仍然可以使用SQL Server。

答案 2 :(得分:0)

我建议你不要去。

使用SQLite -Freeware-

  

SQLite是一个实现自包含的软件库,   无服务器,零配置,事务性SQL数据库引擎。   SQLite是世界上部署最广泛的SQL数据库引擎。   SQLite的源代码位于公共领域。

没有复杂的本地安装,也没有开销。每个数据库一个文件。

Nuget Package:LINK

我正在将它用于像你这样的项目,与DAPPER合作并喜欢它。

看看这个SQLite + Dapper = Simple Data Access Layer

答案 3 :(得分:-1)

另一个很棒的解决方案是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不是免费软件

祝你好运!