Forum: Datenbanken
Delphi
by globetrotter77,
16. Sep 2009
da komme ich noch lange nicht ran ...
könntest du mir vielleicht mal verraten, welche Komponenten und Methoden du verwendet hast?
evtl. den Quelltext und/oder die Einstellungen im Object Inspector?
vielleicht komme ich dann dahinter, was ich falsch gemacht habe ...
wäre toll!
Edit:
hast du auch doppelte Primary Keys dabei?
die muss ich nämlich berücksichtigen
Forum: Datenbanken
Delphi
by globetrotter77,
15. Sep 2009
gnadenlos langsam ... CLientDataSet.Active:=true ===> ca. 15 Minuten, bis es weitergeht
werde ich probieren, glaube aber nicht, dass es daran liegt
da bekam ich den Fehler "column unknown" an der Stelle, wo der Parameter angesprochen wurde - warum, weiß der Kuckuck!
den Quellcode habe ich mittlerweile so sehr gemetzelt, das er kaum noch zu erkennen ist, nur um die verschiedenen...
Forum: Datenbanken
Delphi
by globetrotter77,
15. Sep 2009
Genau das benutze ich, allerdings zunächst mal nur in einer einzigen großen Transaktion.
Das werde ich noch abändern. Pro Datensatz ist allerdings auch zu langsam.
Das würde ich gerne tun, aber mit SQLConnection.ExecuteDirect('INSERT INTO ...') habe ich doch gar keine Parameter zur Verfügung, oder?
Oder wäre es möglich, innerhalb von SQLConnection.StartTransaction und SQLConnection.Commit...
Forum: Datenbanken
Delphi
by globetrotter77,
15. Sep 2009
sehr schön, wenn auch unverständlich:
mit StartTransaction(TD) und Commit(TD) geht's plötzlich einigermaßen schnell.
Vorher ist allerdings noch
TD.TransactionID:=1;
erforderlich.
Ca. 105000 Datensätze in knapp 4 Minuten
Kein Vergleich mit dem Ergebnis von omata, aber immerhin.
Allerdings dauert danach ein Open eines ClientDataSets schlappe 15 (fünfzehn!) Minuten!!!
Forum: Datenbanken
Delphi
by globetrotter77,
14. Sep 2009
da bin ich mir sogar sehr sicher, weil ich nämlich nach dem Zurechtstutzen auf das Wesentliche versehentlich noch einen anderen Parameter füllen wollte, der in der Abfrage gar nicht mehr vorkommt - das führt sofort zu einem Systemfehler!
Andererseits führt auch die konsequente Verwendung der Kleinschreibung beim Parameter immer zur selben Fehlermeldung mit groß geschriebener ARTNR.
ParamByName...
Forum: Datenbanken
Delphi
by globetrotter77,
14. Sep 2009
DM_User.SQLQueryImport.Params.Value:=feldtxt;
nicht wundern über den veränderten Namen, ich habe fürs Testen einen neuen SQLQuery angelegt.
Der Parameter ist definiert mit
DataType = ftString
Name = 'artnr'
ParamType = ptInput
Size = 17
Forum: Datenbanken
Delphi
by globetrotter77,
14. Sep 2009
Bin schon ganz meschugge ...
wie war das nochmal mit den Params?
wie ordne ich denen Werte zu?
geht das mit
SQLQuery.Params.Value:='blabla';
und muss ich das Prepare selbst auslösen?
Forum: Datenbanken
Delphi
by globetrotter77,
14. Sep 2009
StartTransaction erwartet einen "benutzerdefinierten Transaktionsbezeichner" - was ist denn damit gemeint??
und wie macht man das?
Forum: Datenbanken
Delphi
by globetrotter77,
14. Sep 2009
Aha! Das könnte natürlich ein Problem sein!
und wie macht man das mit der expliziten Transaktionssteuerung?
Forum: Datenbanken
Delphi
by globetrotter77,
14. Sep 2009
wieso ist das dann super einfach?
wie meinst du das?
Forum: Datenbanken
Delphi
by globetrotter77,
14. Sep 2009
wie gesagt, ich habe eine Textdatei und keine Tabelle
Forum: Datenbanken
Delphi
by globetrotter77,
14. Sep 2009
über external file habe ich auch schon nachgedacht, aber ich habe das Problem, dass ich davon ausgehen muss, dass doppelte Schlüssel vorkommen ... wie geht der Import via external file damit um?
im Augenblick löse ich das durch ein try-except-Konstrukt ...
und wie definiere ich in einem external file Datumswerte?
hat jemand Erfahrung?