![]() |
DB - Komponente ohne GUI?
Hallo allerseits!
Wenn ich in meinem Programm eine Komponente, beispielsweise die SQL Querry, verwenden will, platziere ich normalerweise einfach die entsprechende Komponente auf meinem Formular. Nun möchte ich aber eine SQL Querry in einer Klasse verwenden, die keine grafische Oberfläche besitzt, wie binde ich die Komponente nun in diese Klasse ein??? |
Dynamisch im Code erzeugen:
Delphi-Quellcode:
Und nicht vergessen mit Free wieder freigeben.
var
MyKompo : TKompo; begin MyKompo := TKompo.Create; My Kompo._ _ _ := 'bla blub'; |
Hallo Luckie,
vielen Dank für die Info, grundsätzlich sollte es so funktionieren! allerdings hat mein Code wohl noch Fehler, was ist in folgender Funktion falsch??? :freak: Ich bekomme einfach keinen Wert aus der Datenbank zurück!
Code:
function MyDBHandle.DBAccess(Input: String): String;
var MyQuery : TQuery; begin try MyQuery := TQuery.Create(MyQuery); MyQuery.LoginPrompt := False; MyQuery.DatabaseName := 'Test'; MyQuery.Active := False; MyQuery.SQL.Clear; MyQuery.SQL.Add('SELECT Info FROM Tab WHERE Number='+ QuotedStr (Input)); MyQuery.Open; MyQuery.First; Result := MyQuery.FieldList.Values['Info']; except Result := '-1'; end; |
Hai Evilboyz,
von welchem Typ ist denn das Feld Number in deiner Tabelle? Wenn es nummerich ist musst Du die Abfrage ohne QuotedStr machen. Achja, zum auslesen würde ich:
Delphi-Quellcode:
nehmen. Ist aber geschmags sache ..
resulst := MyQuery.FieldByName ('info').AsString;
|
Das sieht mit etwas seltsam aus:
Delphi-Quellcode:
Ich nehme mal an, dass der Parameter im Konstrukrur den Owner angibt. Wenn ja, ist das wohl ziemlich ungünstig, ein Objekt anzugeben, dass zu diesem Zeitpunkt noch nicht existiert, da es ja erst in diesem Moment erstellt wird. Schreib also besser folgendes:
MyQuery := TQuery.Create(MyQuery);
Delphi-Quellcode:
MyQuery := TQuery.Create(nil);
|
Zitat:
Zitat:
So und jetzt mal Danke an alle, die mir geholfen haben, es funktioniert endlich :bounce1: :bounce2: :bouncing4: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:18 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-2025 by Thomas Breitkreuz