Forum: Datenbanken
by Franzelchen,
4. Mär 2012
@ mkinzler
Danke.
@ Hoika
Die Tabelle hat weder Indizes noch Trigger.
Zu dem Quelltext:
ZeosQuery (habe ich gelesen) besitzt die einstellbare Prepare Funktion nicht, da diese Funktion im Quelltext von Zeos bereits fest einprogrammiert ist.
Forum: Datenbanken
by Franzelchen,
4. Mär 2012
Also ich habe große Schwierigkeiten mir 35000 und mehr Insert befehle in einem Block vorzustellen.
Kann mir zum Thema execute Block jemand Einführungsliteratur nennen?
Forum: Datenbanken
by Franzelchen,
4. Mär 2012
Alle 35000 Datensätze, deren Zahl auf Dauer wächst, in ein oder zwei derartiger Blöcke, also 35000 einzelne Inserts... oder verstehe ich das falsch?
Wie wird dann ein solcher Block in Delphi eingebunden?
Forum: Datenbanken
by Franzelchen,
3. Mär 2012
1er Gedanke: Mist
2er Gedanke: gibt's Literatur, Anwendungsbeispiele etc.
Forum: Datenbanken
by Franzelchen,
3. Mär 2012
bei Anzahl = 1 : keine Fehlermeldung, Die Tabelle wird erstellt.
Schon bei Anzahl = 2 : obige Fehlermeldung (nur stark verkürzt 2 Einträge). Keine Erstellung der Tabelle.
Forum: Datenbanken
by Franzelchen,
3. Mär 2012
Ich steh auf dem Schlauch...:?
Forum: Datenbanken
by Franzelchen,
3. Mär 2012
Bei Anzahl 30 werden 30 Insertbefehle in einem Rutsch ausgeführt (siehe Fehlermeldung 30x insert). Bei Anzahl 1 demzufolge nur 1 Insert.
Forum: Datenbanken
by Franzelchen,
3. Mär 2012
So etwa??
procedure TForm1.InputDataset3Click(Sender: TObject);
var i:Integer;
var startzeit,stopzeit : TDateTime;
begin
i := 0;
startzeit := now;
Forum: Datenbanken
by Franzelchen,
3. Mär 2012
var i:Integer;
var startzeit,stopzeit : TDateTime;
begin
startzeit := now;
i := 0; // Initialisierung von i
Screen.Cursor := crHourGlass;
ZConnection.Database := 'c:\msql\firedb.fdb';
Zquery1.SQL.Text:='INSERT INTO TestTabelle (Wert1, Wert2) VALUES(:v1, :v2), (:v3, :v4), (:v5, :v6), (:v7, :v8), (:v9, :v10)';
while i <= SG1.RowCount-1 do
Forum: Datenbanken
by Franzelchen,
2. Mär 2012
Den ZQuery.text vor die Schleife zu ziehen, statt in der Schleife zu haben, wie in Post 1 bringt sage und schreibe rund 30 sec.
Jetzt habe ich die Parameterliste eingefügt und es passiert absolut nichts. Zeitmessung zeigt 0,00
Wo ist der Fehler?
var i:Integer;
var startzeit,stopzeit : TDateTime;
Forum: Datenbanken
by Franzelchen,
2. Mär 2012
?? Wenn ich das vor die Schleife setze, wie wird dann die Parameterliste befü...
richtig!! egal wo INSERT steht,ausgeführt wird es mit execsql.
ZQuery1.SQL.Text := 'INSERT INTO TestTabelle (Wert1, Wert2) VALUES (:v0, :v1), (:v2, :v3), (:v4, :v5), (:v6, :v7);';
...
with ZQuery1.Params do begin
ParamValues := SG1.Cells;
ParamValues := SG1.Cells;
ParamValues := SG1.Cells;
Forum: Datenbanken
by Franzelchen,
2. Mär 2012
Hallo,
Den folgenden Quelltext habe ich im Forum gefunden und für meinen Zweck angepaßt:
procedure TForm1.InputDatasetClick(Sender: TObject);
var i:Integer;
startzeit,stopzeit : TDateTime;
begin
startzeit := now;