2012-09-18 27 views
0

我们有一个SQL Server数据库建立与链接服务器建立连接到进展OpenEdge数据库慢。我们创建了一个SQL Server视图(用于SSRS使用)的一些使用类似的代码OpenEdge表如下:SQL Server链接服务器进步是与OPENQUERY视图

CREATE VIEW账户AS SELECT * FROM OPENQUERY(myLinkedServerName, 'SELECT * FROM PUB.accounts')

CREATE VIEW客户AS SELECT * FROM OPENQUERY(myLinkedServerName, 'SELECT * FROM PUB.clients')

出于某种原因,似乎查询带回整个表,然后在SQL侧滤波器,而不是在Progress侧执行查询。

有人知道为什么或如何补救?

感谢

回答

0

是否能加快速度时,作为原生OpenEdge SQL查询执行? (您可以使用sqlexp命令行工具从proenv提示符运行查询。)

如果不是,那么问题可能是您需要在数据库上运行UPDATE STATISTICS。

http://knowledgebase.progress.com/articles/Article/20992

您可能还需要运行dbtool调整字段宽度(OpenEdge字段都为可变宽度和可超过酿 - 这给SQL客户端配合)

http://knowledgebase.progress.com/articles/Article/P24496