Ich nehme mal an, der du die XLS Daten über
ADO geöffnet hast und dann im Grid darstellst.
Warum verwendest du dann nicht einfach deine AdoTable, liest die Daten dort aus und insertest diese in deine MyDB ?
Delphi-Quellcode:
Procedure TForm1.Xls2My;
function InsertInToMyDB(
SQL:
String):boolean;
begin
result:=true;
Try
MyQuery.SQL.Text:=
SQL;
MyQuery.execute;
Except
result:=false;
End;
end;
var S:
String;
ErrorCount:Integer;
begin
ErrorCount:=0;
AdoTable.first;
While not AdoTable.eof
do
begin
S:='
INSERT INTO Table123 (Vorname,Name,PLZ,ORT,Personalnummer) VALUES (';
S:=S +'
''
'+ AdoTable.FieldByName('
Vorname').AsString +'
''
, ';
S:=S +'
''
'+ AdoTable.FieldByName('
Nachname').AsString +'
''
, ';
S:=S +'
''
'+ AdoTable.FieldByName('
PLZ').AsString +'
''
, ';
S:=S +'
''
'+ AdoTable.FieldByName('
Ort').AsString +'
''
, ';
S:=S + AdoTable.FieldByName('
PersID').AsInteger +'
)';
if NOT InsertInToMyDB(S)
then ErrorCount:=ErrorCount + 1;
AdoTable.next;
end;
if ErrorCounr > 0
then Showmessage(Inttostr(ErrorCount) + '
Datensätze wurden nicht importiert');
end;