AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Datenbank Feld als Variable deklarieren
Thema durchsuchen
Ansicht
Themen-Optionen

Datenbank Feld als Variable deklarieren

Ein Thema von thiagojonas · begonnen am 9. Dez 2008 · letzter Beitrag vom 10. Dez 2008
Antwort Antwort
thiagojonas

Registriert seit: 31. Aug 2008
Ort: Wolfenbüttel
338 Beiträge
 
#1

Datenbank Feld als Variable deklarieren

  Alt 9. Dez 2008, 11:25
Datenbank: Access • Version: 2000 • Zugriff über: ADO
Hallo Leute,
ich habe ein problem, mit einer Datenbankabfrage.

Also hier meine Abfrage:

ADOQuery2.SQL.Text := 'select `fach` from `lehrer` where `lehrer` = '''+Combobox1.Text+''';'; Wie kann ich den jetzt `fach` einer variablen zuweisen? Z.B. um den Wert über ShowMessage anzuzeigen?
Danke schonmal
  Mit Zitat antworten Zitat
phil_ro

Registriert seit: 25. Nov 2008
3 Beiträge
 
Delphi 2006 Enterprise
 
#2

Re: Datenbank Feld als Variable deklarieren

  Alt 9. Dez 2008, 12:06
Delphi-Quellcode:
ADOQuery2.Open;
sVariable := ADOQuery2.FieldByName('fach').AsString
Alternativ auch

Delphi-Quellcode:
ADOQuery2.Open;
sVariable := ADOQuery1.Fields[0].AsString
  Mit Zitat antworten Zitat
thiagojonas

Registriert seit: 31. Aug 2008
Ort: Wolfenbüttel
338 Beiträge
 
#3

Re: Datenbank Feld als Variable deklarieren

  Alt 10. Dez 2008, 11:20
Hmm... Irgendwie klappt das nicht ganz. (es werden willkürlich die werte ausgewählt)

Oder mache ich was falsch?

Delphi-Quellcode:
  ...if dauer_cb.ItemIndex = 0 then
begin
 ADOQuery2.Open;
 fach := ADOQuery2.FieldByName('fach').AsString ;
 ADOQuery2.SQL.Text := 'select `fach` from `lehrer` where `lehrer` = '''+Combobox1.Text+''';';
 listbox1.AddItem(inttostr(i) + '. ' + time + ' ' + Combobox1.Text + ' ' + fach + ', ' + dauer_cb.Text + ' ' + ' Stunde',listbox1);
  i:= i+1;
  end
else...
  Mit Zitat antworten Zitat
Bbommel

Registriert seit: 27. Jun 2007
Ort: Köln
652 Beiträge
 
Delphi 12 Athens
 
#4

Re: Datenbank Feld als Variable deklarieren

  Alt 10. Dez 2008, 11:34
Du solltest mal über die Reihenfolge deiner Befehle nachdenken:

Du öffnest die SQL-Abfrage (= führst sie aus), bevor du überhaupt den SQL-Befehl festgelegt hast. Und der Variable "fach" weist du einen Wert zu, den sie ebenfalls erst haben kann, nachdem du die SQL-Abfrage ausgeführt hast.

Um ggf. ein Missverständnis zu vermeiden: Die Variable "fach" ist kein Zeiger oder sowas auf dein Ergebnis aus der Datenbank, sondern es wird der Wert aus der Datenbank dahin kopiert.

Bis denn
Bommel
  Mit Zitat antworten Zitat
thiagojonas

Registriert seit: 31. Aug 2008
Ort: Wolfenbüttel
338 Beiträge
 
#5

Re: Datenbank Feld als Variable deklarieren

  Alt 10. Dez 2008, 11:59
Dank kumpel

so ist es richtig:

Delphi-Quellcode:
...if dauer_cb.ItemIndex = 0 then
begin
ADOQuery2.SQL.Text := 'select `fach` from `lehrer` where `lehrer` = '''+Combobox1.Text+''';';
ADOQuery2.Open;
fach := ADOQuery2.FieldByName('fach').AsString ;
listbox1.AddItem(inttostr(i) + '. ' + time + ' ' + Combobox1.Text + ' ' + fach + ', ' + dauer_cb.Text + ' ' + ' Stunde',listbox1);
  i:= i+1;
  end
else...
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:45 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz