组件是ADOTABLE,其属性设置是
ConnectionString := 'DRIVER={MySQL ODBC 5.1 Driver};SERVER=localhost;DATABASE=bom;USER=root;PASSWORD=111111;OPTION=3';
CursorLocation := clUseClient;
CursorType := ctKeyset;
MarshalOptions := moMarshalModifiedOnly;
CacheSize := 1000;
部分代码如下
with TParam4007(FBaseParam),tbl_prm4007 do
begin
BeforeCount:= RecordCount;
for i := 0 to ParamMultiRec.Count - 1 do
begin
GetOneMultiRec(i);
Append;
FieldByName('VERSION_NO').AsInteger := VersionNo;
FieldByName('TICKET_TYPE').AsWideString := IntToHex(TicketType, 2);
FieldByName('TICKET_ID').AsWideString := IntToHex(TicketId, 8);
FieldByName('REJ_MODE').AsInteger := RejMode;
FieldByName('LAST_TIME').AsWideString := FormatDateTime('yyyymmddhhnnss',Now);
end;
Result := RecordCount + 1 - BeforeCount = ParamMultiRec.Count;
if Result then
UpdateBatch(arAll);
else
CancelBatch(arAll);
end;
就是不知道速度这么慢,插入2000条需要60秒,请高手指点!
ConnectionString := 'DRIVER={MySQL ODBC 5.1 Driver};SERVER=localhost;DATABASE=bom;USER=root;PASSWORD=111111;OPTION=3';
CursorLocation := clUseClient;
CursorType := ctKeyset;
MarshalOptions := moMarshalModifiedOnly;
CacheSize := 1000;
部分代码如下
with TParam4007(FBaseParam),tbl_prm4007 do
begin
BeforeCount:= RecordCount;
for i := 0 to ParamMultiRec.Count - 1 do
begin
GetOneMultiRec(i);
Append;
FieldByName('VERSION_NO').AsInteger := VersionNo;
FieldByName('TICKET_TYPE').AsWideString := IntToHex(TicketType, 2);
FieldByName('TICKET_ID').AsWideString := IntToHex(TicketId, 8);
FieldByName('REJ_MODE').AsInteger := RejMode;
FieldByName('LAST_TIME').AsWideString := FormatDateTime('yyyymmddhhnnss',Now);
end;
Result := RecordCount + 1 - BeforeCount = ParamMultiRec.Count;
if Result then
UpdateBatch(arAll);
else
CancelBatch(arAll);
end;
就是不知道速度这么慢,插入2000条需要60秒,请高手指点!
解决方案 »
- 透明按钮的制作?
- 高分求:关于降低cpu占用率的问题
- 加解密多媒体文件
- SQL的char类型是否与delphi的edit构件的text类型一样?
- midas的简单问题!!!!!!!!!!!!!!!!!!!!
- table中的问题:设置loginprompt的属性问题?
- 为什么看不见我创建的按钮啊?
- 求教XPMenu控件的详细用法!XPMenu自带了一张图,他的很多功能我都不会用啊!
- 请教:如何替TMenuItem加上弹出菜单?如何响应动态创建的TMenuItem的事件?
- delphi的socket能跟UNIX下的socket连接吗? 怎么连?(十分着急)
- delphi7 keyboard 控件使用
- 我想在image上实现像股票一样鼠标跟随的十字线效果,请高手帮忙?
(在你append的时候,上一条记录就会向数据库进行提交)
这个函数效率估计不高
一般前台操作数据 都要 ADOTABLE.DisableControls 完了再 ADOTABLE.EnableControls;
另外在更新时将可视的数据控件DisableControls;更新完后再EnableControls,这样也能提高速度。