为什么(100分)

  • 主题发起人 主题发起人 hpretty
  • 开始时间 开始时间
什么为什么什么为什么什么为什么
什么为什么什么为什么什么为什么
什么为什么什么为什么什么为什么
 
不为什么,都挺正常的。
 
不好意思,因为本人的网络速度太慢,而导致不小心的回车,所以我的100分就被送
走了,不过我题目在这。
我用SQL SERVER 做的一个数据库,不知道为什么这么慢,
1290 个记录居然用了90s ,我只是逐个的更新数据而已,不知各位仁兄有何高见
可以帮我解决这个问题?多谢了。
 
我也在想这个问题呢
可以用存储过程吗
你用的是什么方法更新的 update?
faint,速度真慢
 
用的是edit 然后applyupdate,不知道是不是这个方法的问题。
 
SQL Server 的 Update 是允许使用 FROM 从句的。
为什么还要逐行更新!!
看看 SQL Server 的 ../Bin/HelpSQL.HLP
 
1.首先先将你的系统清理干净,如关闭超级解霸等驻留系统及内存的任务,再试一下!
2.在Config.sys中加入:
Device=c:/windows/Server.exe
Device=c:/windows/himem.sys
Files=40
在Autoexec.bat中加入:
c:/windows/Smartdrv.exe, 再试一下!
3.修改Bios中Smart Disk为Enable, 再试一下!
应该没问题.
 
Smartdrv.exe,??
sql server应该在nt 上运行才好,就算是98也不需要smartdrv啊,又不是dos。
为什么慢。先生成1290条update语句在Query Analyzer里试试看。
 
硬件条件你们,就无须讨论了。
win2000 +PIII 5000+ 128M +20G
 
你是用三层?两层?
难道是那么用的:?
with q1do
begin
while not eofdo
edit;
fields[1].asstring := xxx
...
post
//别告诉我upplyupdate放这里
next;
end;
upplyupdate;
end;
如果是,不慢才怪!
推荐用SQL语句UPDATE
 
我的解决问题办法是先排除一切干扰从可能的最基础的地方开始一步步过去,发现究竟哪个环节出
问题了。
 
CJ 讲用SQL语句如何实现,把代码 MAIL 给我。
p>< a href=mailto:zhangzhaofei@163.net a/>
 
原因可能很多你先说清你的作法...
 
你要做什么呢?怎么做呢?
 
先把数据库的内容读出来,然后将一个随机数赋给某个字段,然后全部提交。
 
我的数据库的操作是这样的
with QGradedo
begin
Close;
SQL.Clear;
SQL.Text:='Select * from freshgrade order by total8';
Open;// 按总分顺序排列;
first;
i:=1;
while not Eofdo
begin
setorder[1]:=FieldByName(f8).ASInteger;
Next;
i:=i+1;
end;
//将数据读入数组;
n:=i-1;
setorder[1][2]:=1;
for i:=2 to ndo
begin
if setorder[1]=setorder[i-1][1] then
setorder[2]:=setorder[i-1][2]
else
setorder[2]:=i;
end;
//按总分排好名次;
first;
i:=1;
while not Eofdo
begin
edit;
FieldByName('Torder8').AsInteger:=setorder[2];
i:=i+1;
Next;
end;
//更新数据库;
Applyupdates;//提交作业;
end;
CJ 你说该如何处理速度会快些。
 
哪位大虾,快来救我呀!!
 
接受答案了.
 
后退
顶部