Запутался
Нужно записать в одну бд рандомные записи другой.
Код:
procedure TForm2.nom;
var s,q,t,si,er:integer; search2:boolean;
nom,war: array of integer;
begin
s:=form1.lb.ItemIndex;
ado.TableName:=form1.lb.Items.strings[s];
ado.Open ;
setlength(nom,0);
for q:=0 to ado.RecordCount do begin
setlength(nom,length(nom)+1);
nom[q]:=ado.Fields[5].AsInteger ;
end;
si:=ado.RecordCount ;
randomize;
setlength(war,0);
while length(war)<si do begin
er:=random(si);
search2:=false;
for t:=0 to high(war) do
if war[t]=er then begin
search2:=true;break;
end;
if search2 then continue;
setlength(war,length(war)+1);
war[high(war)]:=er;
end;
for t:=0 to high(war) do begin
adon.insert;
adon.fields[1].asinteger:=nom[war[i]];
adon.post;
end;
end;
Мне надо записать во вторую таблицу полученные рандомные записи первой таблицы, чтобы можно было к ним свободно обращаться. Однако в таблицу записываются неверные значения( все единицы).
Что я пропустил?
__________________
Алкоголик-аморал, явная угроза обществу
Блин, я уже местный, а все равно нифига не знаю...
|