Autor Beitrag
Ingo.Neumann
Hält's aus hier
Beiträge: 11

W2000 XP WIN7
Delphi X2
BeitragVerfasst: So 15.04.12 20:48 
Ich bin nahezu am Verzweifeln - Umstellung auf Delphi X2 hat wunderbar funktioniert.
Gleichzeit soll nun endlich die BDE durch SQL Datenbank über ADO realisiert werden.

Der Datenzugriff und Abruf von SQL-Serverdaten funktioniert wunderbar und rasant schnell,
via VPN sogar von jedem Ort der Welt.... doch dann kam ich zur Update- und Insert-Programmierung.

Das dauert für ein paar wenige Datensätze ..... "gefühlte" Stunden.... und bremst somit die
neue Performence wieder aus....

Ich arbeite aus den einzelnen Formularen jeweils mit einem ADOCommand-Element, welches über ein
zentrales ADOConnection-Element mit dem SQL-Server verbunden ist.


Ich arbeite mit folgenden Quelltext (bitte nicht wundern ich bin ein bissel fauel und benutzte
immer den Umweg über die query.sql-schnittstelle .....

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
adoquery9.SQL.Clear;
adoquery9.SQL.Add('INSERT INTO druck1_' + kdprojekt.ADOQuery1.FieldByName('projektnr').AsString + ' (projektnr, rg_name1, rg_name2, rg_konto, rg_telefon, rg_telefax,');
adoquery9.SQL.Add('rg_ort, rg_strasse, rg_kdnr, rg_lk, rg_staat, rg_land, rg_plz, rg_ustid, vw_name1, vw_name2, vw_konto, vw_telefon, vw_telefax, vw_ort, vw_strasse, vw_lk, vw_staat,');
adoquery9.SQL.Add('vw_land, vw_plz, telefon, telefax, email, sbname, sbtelefon, sbtelefax, vname, vtelefon, vtelefax, leistung, ihrauftrag, name, layout, bhkonto, mwstsatz)');
adoquery9.SQL.Add('select kdprojekt.projektnr, kdprojekt.rg_name1, kdprojekt.rg_name2, kdprojekt.rg_konto, kdprojekt.rg_telefon, kdprojekt.rg_telefax, kdprojekt.rg_ort,');
adoquery9.SQL.Add('kdprojekt.rg_strasse, kdprojekt.rg_kdnr, kdprojekt.rg_lk, kdprojekt.rg_staat, kdprojekt.rg_land, kdprojekt.rg_plz, kdprojekt.rg_ustid, kdprojekt.vw_name1,');
adoquery9.SQL.Add('kdprojekt.vw_name2, kdprojekt.vw_konto, kdprojekt.vw_telefon, kdprojekt.vw_telefax, kdprojekt.vw_ort, kdprojekt.vw_strasse, kdprojekt.vw_lk, kdprojekt.vw_staat,');
adoquery9.SQL.Add('kdprojekt.vw_land, kdprojekt.vw_plz, kdprojekt.telefon, kdprojekt.telefax, kdprojekt.email, sbpersonal.name, sbpersonal.telefon,');
adoquery9.SQL.Add('sbpersonal.telefax,');
adoquery9.SQL.Add('vnpersonal.name, vnpersonal.telefon, vnpersonal.telefax, kdprojekt.leistung, kdprojekt.ihrauftrag, kdprojekt.name, kdprojekt.layout, kdprojekt.bhkonto, konten.steuer');
adoquery9.SQL.Add('FROM Kdprojekt');
adoquery9.SQL.Add('INNER JOIN Personal SBPersonal');
adoquery9.SQL.Add('ON  (Kdprojekt.SBNr = SBPersonal.persnr)');
adoquery9.SQL.Add('INNER JOIN Personal VNPersonal');
adoquery9.SQL.Add('ON  (Kdprojekt.Vnr = VNPersonal.persnr)');
adoquery9.SQL.Add('INNER JOIN Konten');
adoquery9.SQL.Add('ON  (Kdprojekt.Bhkonto = Konten.Konto)');
adoquery9.SQL.Add('where kdprojekt.projektnr = ' + quotedstr(kdprojekt.ADOQuery1.FieldByName('projektnr').AsString));

adocommand1.CommandText := adoquery9.SQL.Text;
adocommand1.Execute;



Warum dauert das Update eine halbe Ewigkeit - da könnte ich ja in der Zwischenzeit die Daten herunterladen und wieder hinaufschieben - da wäre ich schneller...

Wer weiß Rat - was mache ich falsch ?

Moderiert von user profile iconMartok: Delphi-Tags hinzugefügt
Perlsau
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Mo 16.04.12 10:26 
user profile iconIngo.Neumann hat folgendes geschrieben Zum zitierten Posting springen:
Warum dauert das Update eine halbe Ewigkeit


Wie hattest du es denn zuvor gelöst? War das mit der BDE schneller?