需要一个更好的选择然后 ms 访问

Posted

技术标签:

【中文标题】需要一个更好的选择然后 ms 访问【英文标题】:Need a better option then ms access 【发布时间】:2011-04-19 14:44:26 【问题描述】:

我有一个 Access 数据库,用于我的 Windows 窗体应用程序的后端。

有没有使用 SQL Express 访问数据文件的好示例,以便无需在用户计算机上安装 Office 或 MS Office Runtime 即可使用该程序?

我目前正在使用 ADO.Net,但该程序仍然需要

【问题讨论】:

你试过在没有运行时的机器上安装这个应用程序吗?您可能会发现它仍然有效。 【参考方案1】:

据我所知,从 win 2000 开始的所有最新版本的 windows 都附带打开和读取访问数据库所需的所有组件。

安装 Access 的唯一原因是您使用报告和表单以及部分 UI。

因此,在任何最新版本的 Windows 上,您无需安装任何东西即可打开和读取 Access mdb 文件 - 事实上,您可以使用 Windows 脚本,甚至无需安装任何开发工具,甚至任何超出默认软件的软件在窗户框上。

【讨论】:

实际上这对于 MDB 文件是正确的。 ACCDB 文件将需要 ACE 驱动程序。 唯一的其他变化是如果他们使用的是某些版本的 Windows Embedded 或 Windows CE。我非常怀疑这是基于 OP 的问题的情况,但我想我还是会提到它。【参考方案2】:

你有没有想过使用 SQLite?

【讨论】:

我想要一些已经随 Windows 分发的东西,这样客户就不需要下载或安装其他组件了。 他们不需要 - Sqlite 的美妙之处在于您可以将其嵌入到您的代码中!【参考方案3】:

如果您正在考虑扩展到 SQL Express,我建议您将实体框架或 Linq-to-SQL 用于您的数据访问层。 (尽管两者都应该适用于您的 Access 数据库。)以下是每个框架的一些很好的快速入门教程:

实体框架快速入门: http://msdn.microsoft.com/en-us/library/bb399182.aspx

ScottGu 的 Linq-to-SQL 教程: http://weblogs.asp.net/scottgu/archive/2007/05/19/using-linq-to-sql-part-1.aspx

此外,如果您不想担心客户端安装,则需要将 SQL Express 安装在服务器上并将其用作共享数据库。如果您需要每个客户端的数据库,SQL Express 将需要在客户端上进行额外安装。

【讨论】:

以上是关于需要一个更好的选择然后 ms 访问的主要内容,如果未能解决你的问题,请参考以下文章

MS 访问事件加载表单

访问表单和子表单

另一个选择查询中的 MS Access 选择查询,用于选择另一个字段值

如何在 MS Project 中执行查询/访问共享点列表?

MS 访问组合框

ms 访问,需要获取具有不同列的所有行