我想将当前的数据库从MDB移动到MSSQL服务器。当我通过ODBC完成此操作时,查询变得特别慢。 我有红色,它导致ODBC,不支持group by和JOIN,join,所以它必须在当前机器上进行多个查询和处理数据。
如何更快地切换到某些内容(对于MSAccess 2003)?
答案 0 :(得分:2)
实际上,在大多数情况下,Access做得不错。如果您的查询有一些连接,但是ESPECIALLY有一些聚合组,那么只需创建一个视图,然后链接到该视图。它可能会像传递查询一样快速运行,但没有访问端的麻烦和努力。
因此,在大多数情况下,当使用Access作为SQL服务器的前端时,您应该能够获得出色的性能。
因此,对于调用存储过程或某些报告,您可以考虑使用传递查询。
但是,为了节省您的时间和精力,那么对于具有连接的quires,尤其是具有group by或count等聚合的quires,那么只需创建一个视图服务器端,然后链接到该。
执行此操作时,您会找到性能优先。
答案 1 :(得分:1)
只是一个基本且愚蠢的问题:你是否在SQL数据库中定义了所有需要的索引?
答案 2 :(得分:0)
您是否尝试过此方法:http://www.packtpub.com/article/transferring-data-ms-access-2003-to-sql-server-2008?
要使其重复,在最后一步,勾选“保存SSIS包”并进行适当的安排。
这是Microsoft针对Microsoft的方法,所以除非有已知问题,否则我会将其作为最佳方法。
答案 3 :(得分:0)
使用MS Access时,您可以使用Access Data Project。这为您提供了一个带有SQL Server后端的MS Access前端。 Access数据项目的主要好处是:(a)您可以获得真实SQL数据库的稳定性,可伸缩性和安全性,同时(b)仍然使用众所周知的MS Access前端和编程。
请参阅此stackoverflow问题以进行深入讨论:Pros and Cons of Access Data Project (MS Access front end with SQL Server Backend)