Windows桌面应用程序的更好的数据访问组件

时间:2010-06-01 08:34:59

标签: sql-server winforms ms-access data-access-layer

对于桌面应用程序,哪一个可以是更好的数据访问组件?为什么?

1。)对于MS Access 2007:ADO,OLEDB,DAO

2.。)对于MSSQL 2005:ADO,OLEDB,DAO

3 个答案:

答案 0 :(得分:1)

就他的答案的Access部分而言,我不同意汉斯。

如果您使用的是Access,那么使用DAO或ADO会更好。 DAO是许多人的选择,因为它通常更容易,并且是MSAccess的本机数据访问模型。请查看Is it better to use ADO or DAO in Access 2007?以获得更全面的讨论。

答案 1 :(得分:0)

DAO无可救药地过时,它不支持您列出的引擎。 OLEDB和ADO是互补的,OLEDB提供了dbase引擎接口,ADO是你在代码中用来编程dbase接口的类的抓包。 .NET框架中的ADO.NET。

对于Access,您将使用System.Data.OleDb命名空间中的类,您的连接字符串使用ACE提供程序。对于SQL,您最好使用System.Data.SqlClient命名空间中的类。请访问connectionstrings.com以获取有关配置连接字符串的帮助。

答案 2 :(得分:-2)

问问自己:我需要哪些数据访问功能,并根据它选择您的图层。 MS Access是基于文件的数据存储,因此如果您有多个用户使用您的应用程序,那么Access是一个糟糕的选择。我会避开MSA并专注于新技术。

MSSQL更好,因为它可扩展,支持多个并发用户,并具有其他管理工具,如备份和报告服务。 SQL 2005 Compact Edition允许您在运行时附加数据库,非常适合单实例桌面应用程序。

您可能希望查看的第三个DAC SQLite也适用于基于文件的解决方案或桌面应用程序。