sybase循环插入1万数据的问题. 只是测试而已. 真正要插入100万.(100分)

G

getchar

Unregistered / Unconfirmed
GUEST, unregistred user!
Qry.Close;
Qry.SQL.Text := 'create table #spzlk_temp ( '+
'sp_zcode varchar(30), '+
'sp_name varchar(200), '+
'sp_sa_price numeric(18,4), '+
'sp_zk numeric(18,4) )';
Qry.ExecSQL;

while not Qry1.Eof do
begin //生成insert脚本
Qry.Close;
Qry.SQL.Clear;
Qry.SQL.Add('Insert into #spzlk_temp (sp_zcode, sp_name, sp_sa_price, sp_zk) values ('+
''''+Qry1.FieldByName('sp_code').AsString+'''' + ',' +
''''+Qry1.FieldByName('sp_name').AsString+'''' + ',' +
''+Qry1.FieldByName('sp_sa_pri1').AsString+''+ ',' +
''+Qry1.FieldByName('sp_zk').AsString+''+ ')');
Qry.ExecSQL;
Qry1.Next;
end;

Qry1里面只有1万条记录,将来会有100万.
单步调试开始可以执行插入, 插入大概1K多条的时候就出错.
提示dboledb.dll这个东西访问内存出错.
 
试了一下,搞500条记录做循环插入,一切正常.
现在可以确定一定是sybase的bug了.
 
不一定的,可以试下用不同方式连接sybase数据库
 
顶部