![]() |
Datenbank: MSSQL • Version: 2008 • Zugriff über: ADO
Von ADOQuery to EditFeld
Hallo
Mit welchem befehl bekomme ich von einer Abfrage den Wert in ein Editfeld? |
AW: Von ADOQuery to EditFeld
Mit einer einfachen Zuweisung.
Delphi-Quellcode:
edtName.Text := Query.FieldByName('Name').AsString;
|
AW: Von ADOQuery to EditFeld
Kann ich auch die Werte aus der DataSource entnehmen?
|
AW: Von ADOQuery to EditFeld
Die Werte stehen im Dataset, also in diesem Fall in Deiner Query.
|
AW: Von ADOQuery to EditFeld
Okay danke.
Aber eine andere Frage, Ich möchte in einer Tabelle zwei Werte gleichzeitig setzten sprich ein SQL Update durchführen
Code:
Fehler: Falsche Syntax in der nähe des AND-Schlüsselwortes -.-
UPDATE Tabelle
SET Spalte2 = 'aWert' AND Spalte2 = 'bWert' WHERE (Spalte1 = 'Zahl') |
AW: Von ADOQuery to EditFeld
Ersetze das AND mal durch ein Komma.
|
AW: Von ADOQuery to EditFeld
...und benutze bitte Parameter. :zwinker:
|
AW: Von ADOQuery to EditFeld
Wieder mal was gelernt..
Jetzt hab ich noch ne letzte frage: Und zwar Ich habe eine Tabelle Wo in der Spalte 2 Nummern drinnen stehn Zu diesen Nummern stehen die Bezeichnungen in einer anderen Tabelle. Jetzt möchte ich anhand einer Combobox die auswahl mit Bezeichnungen machen, aber ich kann nur in der Tabelle die ich ändern will nur die Spalte2 mit Nummern ändern keine Strings wie stell ich das am besten an. |
AW: Von ADOQuery to EditFeld
Ich habe das jetzt 4 mal gelesen, aber immer noch nicht verstanden. Brauchst Du einen Lookup oder wie? :gruebel:
|
AW: Von ADOQuery to EditFeld
Fülle Deine Combobox mit den Daten aus der anderen Tabelle gemäß ID
- wenn Du es "per Hand" machen willst - Mavarik [Edit]Ja klingt nach Lookup[/Edit] |
AW: Von ADOQuery to EditFeld
Okay ich erklärs mal ganz einfach
Ich hab eine DBGrid in der liste ich aus Tabelle1 bestimmte zeilen auf Diese Zeilen haben 3 spalten. Die 2. und 3. Spalte möchte ich pro Zeile variabel machen Sprich diese mit 2 Comboboxen und einem Button wo das Update drinnen steht variabel machen (änderbar) Die Tabelle is folgendermaßen aufgebaut. Spalte1 = nvarchar Spalte2 = smallint Spalte3 = bit Ich möchte die letzten zwei Spalten mit Comboboxn ändern können jedoch stehen in meinen Comboboxn Strings und da ist schon das Problem. da ich einmal smallint habe und bit Jetzt bekomm ich natürlich einen Datentyp problem denn ich kann kein Wort in ein smallint reinschreiben... da dort die Nummern drinnen stehen. Diese nummern stehen mit der Bezeichnung in einer anderen Tabelle. |
AW: Von ADOQuery to EditFeld
Du könntest die Objects-Eigenschaft von TStrings (also auch TComboBox.Items) missbrauchen, um dort den Primärschlüssel der Lookup-Tabelle abzulegen. Das müsste etwa so funktionieren:
Delphi-Quellcode:
Um nun and die hinterlegte ID zu gelangen, castest Du eben wieder zurück.
DeineComboBox.Items.BeginUpdate;
try DeineComboBox.Items.Clear; Query.SQL.Text := 'SELECT ID, Bezeichnung FROM Tabelle2 ORDER By Bezeichnung'; Query.Open; while not Query.EOF do begin DeineComboBox.Items.AddObject(Query.FieldByName('Bezeichnung').AsString, TObject(Query.FieldByName('ID').AsInteger)); Query.Next; end; finally DeineComboBox.Items.EndUpdate; end;
Delphi-Quellcode:
ID := integer(DeineComboBox.Items.Objects[DeineComboBox.ItemIndex]);
|
AW: Von ADOQuery to EditFeld
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:48 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