AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

DbExpress Rückgabe

Offene Frage von "Martin W"
Ein Thema von Martin W · begonnen am 11. Dez 2005 · letzter Beitrag vom 12. Dez 2005
Antwort Antwort
Martin W

Registriert seit: 29. Mai 2004
Ort: Augsburg
220 Beiträge
 
Delphi XE3 Enterprise
 
#1

DbExpress Rückgabe

  Alt 11. Dez 2005, 13:40
Datenbank: MySQL • Version: 4 • Zugriff über: dbExpress
Hey;


Nach längerer Pause hab ich mir vorgenommen mich mal wieder intensiv mit Delphi zu beschäftigen.

Also folgendes:, ich habe:

- TSQLConnection;
- TSQLDataSet;

Das ausführen folgendes Befehls klappt einwandfrei:

CREATE TABLE `Norm1` (`TEXT_1` text NOT NULL , `Wert` text NOT NULL ) TYPE=MYISAM PACK_KEYS=DEFAULT ROW_FORMAT=DEFAULT oder

INSERT INTO `Norm1` (TEXT_1, Wert) VALUES(' + QuotedStr(Edit1.Text) + ', ' + QuotedStr(Edit2.Text) + ')
DOch jetzt möchte ich auch Werte abfragen. Das mache ich so:

SQLDataSet1.CommandText := 'SELECT Wert FROM `Norm1` WHERE TEXT_1=QuotedStr(Edit1.Text)'; Also Rückgabewert dürfte ich eine Tabelle mit einer Spalte sowie einigen Zeilen haben. Wie kann ich jetzt schritt für schritt den Text der einzelnen Zeilen auslesen? Möchte folgendes:

Caption Label 1 = Wert Zeile 1
Caption Label 2 = Wert Zeile 2
Caption Label 3 = Wert Zeile 3

usw..


Danke für alle Antworten,
gruß
martin
  Mit Zitat antworten Zitat
Benutzerbild von mikhal
mikhal

Registriert seit: 11. Sep 2003
Ort: Linz am Rhein
796 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: DbExpress Rückgabe

  Alt 11. Dez 2005, 14:09
Etwa so:
Delphi-Quellcode:
SQLDataSet1.Open;
Label1.Caption := SQLDataSet.FindField('Wert').AsString;
SQLDataSet1.Next;
Label2.Caption := SLQDataSet1.FindField('Wert').AsString;
...
Grüße
Mikhal
Michael Kraemer
Computer erleichtern die Arbeit...
...und die Erde ist eine Scheibe!
  Mit Zitat antworten Zitat
Martin W

Registriert seit: 29. Mai 2004
Ort: Augsburg
220 Beiträge
 
Delphi XE3 Enterprise
 
#3

Re: DbExpress Rückgabe

  Alt 11. Dez 2005, 14:11
Woran merke ich das ich den letzten datensatz erreicht habe`?
  Mit Zitat antworten Zitat
Benutzerbild von mikhal
mikhal

Registriert seit: 11. Sep 2003
Ort: Linz am Rhein
796 Beiträge
 
Delphi 11 Alexandria
 
#4

Re: DbExpress Rückgabe

  Alt 11. Dez 2005, 14:13
Die Methode Eof meldet dir, wenn der Cursor über den letzten Datensatz will. Am Besten verwendest du eine While-Schleife, etwa so:

Delphi-Quellcode:
while not SQLDataSet1.Eof do
begin
  ...
  SQLDataSet1.Next;
end;
...
Grüße
Mikhal
Michael Kraemer
Computer erleichtern die Arbeit...
...und die Erde ist eine Scheibe!
  Mit Zitat antworten Zitat
Martin W

Registriert seit: 29. Mai 2004
Ort: Augsburg
220 Beiträge
 
Delphi XE3 Enterprise
 
#5

Re: DbExpress Rückgabe

  Alt 11. Dez 2005, 14:18
mein source sieht jetzt so aus:

Delphi-Quellcode:
  SQLDataSet1.CommandText := 'SELECT Wert FROM `Norm1` WHERE TEXT_1=' + QuotedStr(Edit1.Text);
  SQLDataSet1.Open;
  SQLDataSet1.First;
  Edit2.Text := SQLDataSet1.FindField('Wert').AsString;

es kommt der Fehler:

Zitat:
---------------------------
Project4
---------------------------
dbExpress-Fehler: [0x0003]: Ungültiger Feldtyp.
---------------------------
OK
---------------------------
  Mit Zitat antworten Zitat
Benutzerbild von mikhal
mikhal

Registriert seit: 11. Sep 2003
Ort: Linz am Rhein
796 Beiträge
 
Delphi 11 Alexandria
 
#6

Re: DbExpress Rückgabe

  Alt 11. Dez 2005, 14:30
Ich kenne mich nicht mit MySQL aus, Verwende mal statt des Datentyps Text den Datentyp varchar mit einer Längenangabe bei der Definition deiner Tabelle. Es kann sein, daß es damit zusammenhängt. Siehe auch Dokumentation von MySQL, dort den Hinweis auf stillschweigende Anpassung, sprich Änderung, des Datentyps durch die Datenbank, Version 5.0.

Ansonsten kann ich eigentlich keinen Grund für die Fehlermeldung sehen...

Grüße
Mikhal
Michael Kraemer
Computer erleichtern die Arbeit...
...und die Erde ist eine Scheibe!
  Mit Zitat antworten Zitat
Martin W

Registriert seit: 29. Mai 2004
Ort: Augsburg
220 Beiträge
 
Delphi XE3 Enterprise
 
#7

Re: DbExpress Rückgabe

  Alt 12. Dez 2005, 19:49
Der Fehler kommt leider immer noch ...
  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 08:02 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