键列信息不足或不正确。更新影响到过多的行!var
ProStr: array[0..2] of string;
IndexSn: integer;
IndexName: integer;
final: integer;
begin
ADOTable1.Open; while not ADOTable1.Eof do
begin
//可能出现的注册码分隔符
ProStr[0] := ADOTable1.Fields.Fields[0].AsString;
if ComboBox2.Text<>'' then
begin
indexsn := Pos(ComboBox2.Text, ProStr[0]); if indexsn <> 0 then
final := indexsn
else
final := length(ProStr[0]); if final = Length(Prostr[0]) then
ProStr[1] := ''
else
begin
ProStr[1] := Copy(ProStr[0], final, length(ProStr[0]) - final + 1);
Delete(ProStr[0], final, length(ProStr[0]) - final + 1);
end;
end;
if ComboBox1.Text<>'' then
begin
Indexname := Pos(ComboBox1.Text, ProStr[0]); if indexname <> 0 then
final := indexname
else
final := length(ProStr[0]);
if final = Length(Prostr[0]) then
ProStr[2] := ''
else
begin
ProStr[2] := Copy(ProStr[0], final, length(ProStr[0]) - final + 1);
Delete(ProStr[0], final, length(ProStr[0]) - final + 1);
end;
end;
ProgressBar1.Position := trunc(100 * ADOTable1.RecNo div ADOTable1.RecordCount);
ADOTable1.Edit;
if ProStr[1] <> '' then
ADOTable1.Fields.Fields[1].AsString := ProStr[1];
if ProStr[2] <> '' then
ADOTable1.Fields.Fields[2].AsString := ProStr[2]; ADOTable1.Fields.Fields[0].AsString := ProStr[0];
ADOTable1.Next;
end;
ShowMessage('完成');
end;
ProStr: array[0..2] of string;
IndexSn: integer;
IndexName: integer;
final: integer;
begin
ADOTable1.Open; while not ADOTable1.Eof do
begin
//可能出现的注册码分隔符
ProStr[0] := ADOTable1.Fields.Fields[0].AsString;
if ComboBox2.Text<>'' then
begin
indexsn := Pos(ComboBox2.Text, ProStr[0]); if indexsn <> 0 then
final := indexsn
else
final := length(ProStr[0]); if final = Length(Prostr[0]) then
ProStr[1] := ''
else
begin
ProStr[1] := Copy(ProStr[0], final, length(ProStr[0]) - final + 1);
Delete(ProStr[0], final, length(ProStr[0]) - final + 1);
end;
end;
if ComboBox1.Text<>'' then
begin
Indexname := Pos(ComboBox1.Text, ProStr[0]); if indexname <> 0 then
final := indexname
else
final := length(ProStr[0]);
if final = Length(Prostr[0]) then
ProStr[2] := ''
else
begin
ProStr[2] := Copy(ProStr[0], final, length(ProStr[0]) - final + 1);
Delete(ProStr[0], final, length(ProStr[0]) - final + 1);
end;
end;
ProgressBar1.Position := trunc(100 * ADOTable1.RecNo div ADOTable1.RecordCount);
ADOTable1.Edit;
if ProStr[1] <> '' then
ADOTable1.Fields.Fields[1].AsString := ProStr[1];
if ProStr[2] <> '' then
ADOTable1.Fields.Fields[2].AsString := ProStr[2]; ADOTable1.Fields.Fields[0].AsString := ProStr[0];
ADOTable1.Next;
end;
ShowMessage('完成');
end;
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货