AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Doppelte Werte aus Tabellenspalte nicht anzeigen??
Thema durchsuchen
Ansicht
Themen-Optionen

Doppelte Werte aus Tabellenspalte nicht anzeigen??

Ein Thema von TankWart · begonnen am 2. Mär 2007 · letzter Beitrag vom 2. Mär 2007
Antwort Antwort
Seite 1 von 2  1 2      
TankWart

Registriert seit: 25. Feb 2005
46 Beiträge
 
#1

Doppelte Werte aus Tabellenspalte nicht anzeigen??

  Alt 2. Mär 2007, 12:17
Datenbank: Firebird • Version: 1.5 • Zugriff über: ZEOS
Hallo zusammen,
ich möchte mir mit Hilfe einer Query die Werte aus einer Tabellenspalte anzeigen lassen,
dabei sollen doppelte Einträge nicht angezeigt werden.

Im Moment gehe ich noch so vor:
Delphi-Quellcode:
ZQVeranstaltung.Close;
ZQVeranstaltung.SQL.Clear;
ZQVeranstaltung.SQL.Text := 'SELECT DISTINCT vName FROM veranstaltung';
ZQVeranstaltung.Open;
da ist aber halt das Problem, das die groß und klein Schreibung nicht beachtet wird, es wird also
z.B. Rockkonzert und rockkonzert ausgegeben,
es sollte halt nur eins der beiden berücksichtigt werden.

Wie muss ich mein Statement erweitern um so was zu vermeiden?

Gruß
TankWart
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: Doppelte Werte aus Tabellenspalte nicht anzeigen??

  Alt 2. Mär 2007, 12:29
SELECT DISTINCT UPPER(vName) FROM veranstaltung;
Markus Kinzler
  Mit Zitat antworten Zitat
TankWart

Registriert seit: 25. Feb 2005
46 Beiträge
 
#3

Re: Doppelte Werte aus Tabellenspalte nicht anzeigen??

  Alt 2. Mär 2007, 12:48
Das Statment schluckt er so,
aber frage ich die Werte mit FieldByName nun ab, kommt die Meldung:
Feld vName kann nicht gefunden werden.
Delphi-Quellcode:
ZQVeranstaltung.Close;
ZQVeranstaltung.SQL.Clear;
ZQVeranstaltung.SQL.Text := 'SELECT DISTINCT UPPER(vName) from veranstaltung';
ZQVeranstaltung.Open;

ZQVeranstaltung.First;
if ZQVeranstaltung.RecordCount > 0 then begin
  while not ZQVeranstaltung.Eof do begin
    vName := ZQVeranstaltung.FieldByName('vName').AsString;
    cobxVerName.Items.Add(vName);
    ZQVeranstaltung.Next;
  end;
end;
Ich möchte so, eine Combobox mit Werten aus einer DB füllen, was mache ich da falsch,
bzw. wie geht man da am besten vor um die Box zu füllen.


Gruß
TankWart
  Mit Zitat antworten Zitat
Old M

Registriert seit: 25. Feb 2007
7 Beiträge
 
Delphi 7 Professional
 
#4

Re: Doppelte Werte aus Tabellenspalte nicht anzeigen??

  Alt 2. Mär 2007, 13:06
hat er vielleicht ein problem mit der Variable vName

while not ZQVeranstaltung.Eof do begin
**vName** := ZQVeranstaltung.FieldByName('vName').AsString;
cobxVerName.Items.Add(vName);
ZQVeranstaltung.Next;
end;

vielleicht so

while not ZQVeranstaltung.Eof do begin
cobxVerName.Items.Add(ZQVeranstaltung.FieldByName( 'vName').AsString);
ZQVeranstaltung.Next;
end;
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#5

Re: Doppelte Werte aus Tabellenspalte nicht anzeigen??

  Alt 2. Mär 2007, 13:07
SELECT DISTINCT UPPER(vName) as vname from veranstaltung;
Markus Kinzler
  Mit Zitat antworten Zitat
TankWart

Registriert seit: 25. Feb 2005
46 Beiträge
 
#6

Re: Doppelte Werte aus Tabellenspalte nicht anzeigen??

  Alt 2. Mär 2007, 13:24
jep so klappt es:
SELECT DISTINCT UPPER(vName) as vname from veranstaltung; Ist es jetz noch möglich, statt alle Buchstaben groß nur den ersten immer groß anzuzeigen?
Oder kann ich das irgenwie gleich mit meiner Select Abfrage machen?


Danke schon mal im Voraus


Gruß

TankWart
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#7

Re: Doppelte Werte aus Tabellenspalte nicht anzeigen??

  Alt 2. Mär 2007, 13:35
Theroetisch ist sowas mit einer SQL-Abfrage möglich
select distinct (Upper(substring( vName from 1 for 1)) || lower(substring( vName from 2))) as vName, ...
Markus Kinzler
  Mit Zitat antworten Zitat
TankWart

Registriert seit: 25. Feb 2005
46 Beiträge
 
#8

Re: Doppelte Werte aus Tabellenspalte nicht anzeigen??

  Alt 2. Mär 2007, 14:14
wie ist das mit den Punkten am Ende gemeint,
irgenwie bekomme ich das Statment nicht hin.
select distinct (Upper(substring( vName from 1 for 1)) || lower(substring( vName from 2))) as vName, ...
Dank mal wieder im Voraus
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#9

Re: Doppelte Werte aus Tabellenspalte nicht anzeigen??

  Alt 2. Mär 2007, 14:19
select distinct (Upper(substring( vName from 1 for 1)) || lower(substring( vName from 2))) as vName from veranstaltung;
Markus Kinzler
  Mit Zitat antworten Zitat
TankWart

Registriert seit: 25. Feb 2005
46 Beiträge
 
#10

Re: Doppelte Werte aus Tabellenspalte nicht anzeigen??

  Alt 2. Mär 2007, 14:30
mhh, jetzt bringt er Function unknown Lower.
Hab echt keine Ahnung, erkennt jetzt die Funktion LOWER nicht im Statement.

Gruß

TankWart
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 11:13 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