PB问题还是SQL2005问题?

qing151515 2009-08-21 02:58:18
我用PB8.4+SQL2005做的项目.
最近发现有些数据窗口的查询很慢,但是同样的条件在查询分析器里执行就不会.
数据窗口没有下拉子数据窗口,就是直接调用存储过程,用新建一个数据窗口也是一样慢.
在查询分析器里执行可能几秒就出来了,在用DW retrivev有时几分钟都出不来.
还有一个奇怪现象,如果我把存储过程删了,再新建一个同样的.这时用DW retrivev就不用慢.
跟查询分析器里执行差不多.可是过一两天就又变慢了.不知道是PB的问题还是SQL的问题.
还有就是数据量挺大了,有几百万的数据.

请各位帮忙分析分析是什么原因? 非常感谢!
...全文
197 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
qing151515 2009-08-26
  • 打赏
  • 举报
回复
现在改为用MSS SQL SERVER 接口连接,但我发现个问题,在查询分析器看用sp_who看不能主机名的,主机名hostname那列为空的.用回OLE DB 就可以看到,是这样的吗
31737951 2009-08-24
  • 打赏
  • 举报
回复
select * from table (with index = 索引)

你在查询分析器中查寻一次以后 该查询就被优化了 选择了一个合适的索引,
我测试了在datawindow中带参数的查询index的选择好象排除了参数这个项目(复杂的查询来说)
还有sqlserver的自动选择的索引在数据量大的时候不是很准,优先依赖的是 主键索引

分析下表,和查询语句 然后测试 看建立什么索引的效率最高 然后 按
select * from table (with index = 索引) 格式 来指定索引
hcw_peter 2009-08-24
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 hvivip 的回复:]
在PB8.4中有用MSS SQL SERVER 接口,就不要用用OLE DB接口连接
[/Quote]

同意,pb11沒有mss sql server接口才用,ole db接口。
最好使用MSS SQL SERVER 接口。
HVIVIP 2009-08-24
  • 打赏
  • 举报
回复
在PB8.4中有用MSS SQL SERVER 接口,就不要用用OLE DB接口连接
grt 2009-08-23
  • 打赏
  • 举报
回复
我遇你同样的问题,用pb11.5的ODBC接口,不但慢,而且以前用专用接口做的程序,在ODBC下不执行。
这是pb的问题,没办法。
xcj0722 2009-08-22
  • 打赏
  • 举报
回复
学习!
qing151515 2009-08-22
  • 打赏
  • 举报
回复
不是一次取那么多数据,是数据最大表的数据量有几百万了.
table当然有加index了,在查询分析器执行存储过程不慢.
用PB调存储过程马上输入参数预览都很慢了.
数据窗口什么都没加的.
qing151515 2009-08-22
  • 打赏
  • 举报
回复
刚才试了另一个方法,我原来是用OLE DB接口连接的,刚改用MSS SQL SERVER 专用接口查询就很快了.
不明白是怎么回事,难道是OLE DB接口有问题,但是之前一直用都没问题的.是最近查询才慢的.
ziglar 2009-08-21
  • 打赏
  • 举报
回复
table加index
sun1976 2009-08-21
  • 打赏
  • 举报
回复
dw_1.setredraw(false)
dw_1.retrieve()
dw_1.setredraw(true)
看看有没有filter\sort的设置
filter不用,在数据库where过滤
排序使用sql里的orderby ,不在数据窗口上设置
这么着看看还差那么多吗?
不明白干吗取出那么多数据,谁看得过来?

754

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧