![]() |
Datenbank: mysql • Zugriff über: zeos
wie kann ich rausbekommen ob eine variable string,integer,bo
Hallo Leute,
wenn ich was schreibe, habe ich ein Problem: also ich habe bei einen neuen projekt ein problem mit der zeit. ich habe mit einer mysql db eine datenerfassung und auswertung realisiert soweit ok allerdings benötigt die auswertung zu viel zeit. deshalb habe ich mir gedacht ich könnte ja eine db im speicher anlegen (als record) auch ok, so nun habe ich in meinem record 'db' die tabellen (arrayrecords t1,t2,t3,...) die tabellen haben nun unterschiedliche felder (integer,string,...) nun will ich eine procedur schreiben die mir die daten in die tabellen einfügt. so wie ich es kenne müsste ich für jede tabelle eine eigene procedur haben. ist ja auch kein problem an sich, nur bringt es mich zu der frage :kann ich nicht eine procedur in der ich den typ des feldes in der tabelle abfragen kann? dann könnte meine procedur etwa so beginnen :
Delphi-Quellcode:
t = name der tabelle f = daten, so übergebe ich alle werte als string die ich einfügen will. die werte müsste ich jetzt wenn nötig umwandel. also wie kann ich rausbekommen ob eine variable string,integer,boolean oder float ist?
procedure einfuegen(t : string, f : array[0..20] of string);
|
Re: wie kann ich rausbekommen ob eine variable string,intege
Also ich will ja nicht wissen, wievile Millionen Datensätze in deiner DB sind, dass sie langsam wird ... :mrgreen:
Aber zu deiner Funktion: Da würde sich der Datentyp Variant anbieten, der kann sozusagen einen beliebigen Wert Typensicher beinahlten ;) |
Re: wie kann ich rausbekommen ob eine variable string,intege
Hallo,
Du könntest in der Prozedur einfügen auch ein array of cont (TVarRec)verwenden. Dann könntest Du den Typ für jeden übergebenen Wert abfragen. Gruß |
Re: wie kann ich rausbekommen ob eine variable string,intege
hallo und danke aber leider habe ich nur d5 und Varaint,cont geht noch nicht.
|
Re: wie kann ich rausbekommen ob eine variable string,intege
Ich denke, dass sie Variant und array of const meinen ;-)
|
Re: wie kann ich rausbekommen ob eine variable string,intege
Hoppla,
ja ich hab array of const gemeint. :oops: |
Re: wie kann ich rausbekommen ob eine variable string,intege
Hallo,
mal etwas anders?
Delphi-Quellcode:
Das funktioniert auch, wenn ID = Integer, sofern der String in f[0] einen Integer enthält, gilt analog auch für Float...
Var
t : TTable; begin // create und co t.FieldByName('ID').AsString := f[0]; t.FieldByName('start').AsString := f[1]; ... t.FieldByName('letztesfeld').AsString := f[20]; t.Post; Bei boolschen Feldern sollte es auch funktionieren, sofern in f Wahr, Falsch, True oder False steht. Variant ist in diesem Fall übrigens auch keine schlechte Idee. Mit ![]() |
Re: wie kann ich rausbekommen ob eine variable string,intege
Schau doch mal, ob es in Delphi 5 schon die Format-Funktion gibt.
Die macht im Prinzip das, was du möchtest. Das Ergebnis ist ein anderes, aber die Parameter-Übergabe und Auswertung ist gleich. Dann kannst Du auch in den Sourcen nachsehen, was da bei Format passiert und deine Funktion analog dazu aufbauen. cu Oliver |
Re: wie kann ich rausbekommen ob eine variable string,intege
Dein Thread-Titel ist ein bisschen verwirrend :mrgreen:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:08 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