同时打开多个TABLE是出现的general sql error(200分)

  • 主题发起人 主题发起人 julian
  • 开始时间 开始时间
J

julian

Unregistered / Unconfirmed
GUEST, unregistred user!
当同时打开多个表时,出现general sql error a time out occured while waiting for memeory resource to execute the query rerun the query的提示
数据库为sql server 7.0 各表上有所索引
 
从错误信息上看是本地机内存资源不足,在等待query结果时超时
估计是你同时打开的表太多了
1.增加内存
2.修改程序,尽量同时打开少一点的表
 
在SQLServer开发过程中,尽量不要用Table,因为这与SQLServer的实现机制有关,
这是在做项目过程中血的教训,真的,
如果有用Table的地方,都用TQuery和TUpdateSQL结合起来代替吧,两者可以实现同样
的功能,但,后者不会出现这样的情况(具体原因,也与Table和TQuery原理不同有关)
对了,在使用TQuery时,最好不要用Select * from XXX_TableName,因为Select *
在使用SQLServer时也会有一些问题,这个问题在SQLServer6.5中特别明显.办法是用
SQLBuilder自动生成所有的字段(我是说,如果你认为Select * 方便的话,用SQLBuilder
一样的方便,而且不会有问题)
在Delphi中使用Table的情况有以下几种(不全):
在使用FoxPro,或Paradox时,可以用它,
用Table来创建一个表格.
 
最好不要直接对表操作,直接操作表十分耗用系统资源,每次open一个表系统就将表
中所有记录调入,实在不行可以用active,对表的所有操作都可以用query实现,最好用query,因为query返回的是附和条件的记录,这发挥了SQL的效率。
 
dop说的很好!
对于你出现的问题可以查看一下Sql中有关user connections的设置.
 
修改你的程序,不用的资源及时free
需要时再create
表的问题参考以上。
 
同意sz960507的说法,sqlserver 安装后应修改user connects及locks等多用户
控制参数,及memory内存使用参数,这样更能发挥sqlserver 的效能。
 
<font size=20 color=red>我认为和打开的session有关系.</font>
 
接受答案了.
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
I
回复
0
查看
977
import
I
后退
顶部