![]() |
Datenbank: MySQL • Version: 4 • Zugriff über: ZEOS
SQL Statement um aus Textdatei lesen
Hallo,
ich möchte eine Datenbank mittels SQL-Statements aktualisieren(Update table...) dabei soll der Inhalt eines Textfeldes(Memo) aus einer Textdatei gelesen werden. Gibts dafür einen direkten SQL-Befehl oder muss ich mir den Inhalt der Textdatei zuerst auf eine temporäre Variable legen? Gruß Gambit |
Re: SQL Statement um aus Textdatei lesen
einen direkten SQL-befehl gibt es nicht.
musst dir die datei einlesen und dann in die DB schreiben. gruesssle |
Re: SQL Statement um aus Textdatei lesen
Inhalt der Textdatei in Memo laden...
Delphi-Quellcode:
Inhalt des Memos in TZSQLProcessor laden...
Memo.Lines.LoadFromFile('...');
Delphi-Quellcode:
Ausführen
ZSQLProcessor.Script.Assign(Memo.Lines);
Delphi-Quellcode:
P.S.: Bei einigen Datenbanken müssen die Eigenschaften Delimiter und DelimiterType noch richtig gesetzt werden!
ZSQLProcessor.Execute;
|
Re: SQL Statement um aus Textdatei lesen
wobei eine TStringList auch reichen würde, wieso willst du es erst in eine memo laden?
wieso mit nem panzer auf die arme mücke los? entsprechend dann
Delphi-Quellcode:
var Temp:TtringList;
begin Temp:=TStringList.Create; Temp.LoadFromFile('...'); ZSQLProcessor.Script.Assign(Temp); ZSQLProcessor.Execute; Temp.Free; end; Edit: Ich hab keinen Plan was ihr da macht, hab nur die Memo in ne StringList geändert... |
Re: SQL Statement um aus Textdatei lesen
Wozu so umständlich ?
Delphi-Quellcode:
ZSQLProcessor1.LoadFromFile('c:\test.sql');
|
Re: SQL Statement um aus Textdatei lesen
Vielleicht will er das geladene Script noch vorher ansehen und/oder modifizieren??? :roll:
|
Re: SQL Statement um aus Textdatei lesen
Hallo nochmal und Danke für die Antworten.
Ich muss zu meiner Schande gestehen, dass ich noch nie mit diesem ZSQLProcessor gearbeitet habe. Wie benutzt man den genau bzw. was macht man damit? Mit dem Code:
Delphi-Quellcode:
kann ich jetzt ab der Zeile
var Temp:TtringList;
begin Temp:=TStringList.Create; Temp.LoadFromFile('...'); ZSQLProcessor.Script.Assign(Temp); ZSQLProcessor.Execute; Temp.Free; end;
Delphi-Quellcode:
nicht so schrecklich viel anfangen. Was passiert denn da genau?
ZSQLProcessor.Script.Assign(Temp);
Gruß Gambit |
Re: SQL Statement um aus Textdatei lesen
Hallo Gambit,
mit Assign weißt du den Inhalt von Temp auf Script von ZSQLProcessor (beides sind ja Objekte vom Typ TStrings). Ein ZSQLProcessor.Script := Temp würde ja bloß bewirken, dass Script auf das Objekt Temp zeigen würde. Tja, und mit Execute wird das Script (es können eben auch mehrere SQL-Statements hintereinander ausgeführt werden) an die Datenbank geschickt. Wenn du jetzt allerdings nur eine Datei auswählen willst und diese ausführen willst, dann solltest du den "Umweg" über Temp tatsächlich weg lassen und gleich mit ZSQLProcessor.LoadFromFile('...') arbeiten. MfG Stevie |
Re: SQL Statement um aus Textdatei lesen
Gut, das hab' ich soweit verstanden. Nur mit dem Execute ist mir noch nicht ganz klar. Wenn damit das Sript oder in diesem Fall ein Text aus einer Textdatei an die DB geschickt wird, wie wird der Text denn dann einem bestimmten Memo aus der Tabelle zugewiesen?
Oder geht das dann nach dem Execute beispielsweise mit
Delphi-Quellcode:
Gruß
ZQuery.FieldByName('MemoText').asString:= ZSQLProcessor.Script.text;
Gambit |
Re: SQL Statement um aus Textdatei lesen
:wall: :wall: :wall:
Ich glaub, ich hab da was missverstanden! :oops: Ich dachte, du wolltest ein Script aus ner Datei laden, und das ausführen... :pale: Du willst also "nur" den Text aus einer Text-Datei in ein Datenbankfeld schreiben? Das machst du dann über den TStrings-"Umweg" (in TStrings-Objekt laden und dann TStrings.Text dem TField.AsString zuweisen) |
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:01 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz