AGB  ·  Datenschutz  ·  Impressum  







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

View mit Parameter?

Ein Thema von stahli · begonnen am 12. Dez 2009 · letzter Beitrag vom 13. Dez 2009
 
Benutzerbild von stahli
stahli

Registriert seit: 26. Nov 2003
Ort: Halle/Saale
4.352 Beiträge
 
Delphi 11 Alexandria
 
#1

View mit Parameter?

  Alt 12. Dez 2009, 10:46
Datenbank: Firebird • Version: 2.1 • Zugriff über: IBX
Hallo,

ich habe mal eine kurze Verständnisfrage:

Bei einer View ist es wohl nicht möglich, einen Parameter zuzuweisen - oder übersehe ich da etwas?
Ich kann nicht nachträglich das Ergebnis filtern, da der Parameter in der "not exist"-Klausel steckt und in der Rückgebemenge nicht mit enthalten ist.

Konkret will ich hier alle Vereinsmitglieder erhalten, die in einem bestimmten Turnier noch nicht eingesetzt sind.

Delphi-Quellcode:
CREATE VIEW CLUBMEMBERSFREEFORMELEE(
    CLUBPOS,
    CLUBID,
    CLUBPOWERPOS,
    CLUBPOWERID,
    MEMBERPOS,
    GID)
AS
select c.pos, c.gid, p.pos, p.gid, m.pos, m.gid from members m
join clubpowers p on (m.clubpowerid = p.gid)
join clubs c on (p.clubid = c.gid)
where (m.activate = 1) and
      (not exists (select pl.gid from tournamentmeleeplayers pl
                   join tournamentsmelee t on (pl.tournamentmeleeid = t.gid)
                   where (pl.personid = m.personid) and (t.gid = :tgid) // hier geht es um :tgid
                  ))
order by c.pos nulls last, c.gid, p.pos nulls last, p.gid, m.pos nulls last, m.gid
;
Ohne "and (t.gid = :tgid)" erhalte ich alle Vereinsmitglieder, die noch in KEINEM Turnier eingesetzt sind. Soweit funktioniert das
Nun möchte ich die Abfrage auf ein bestimmtes Turnier (t.gid) beziehen.

Ich bin dabei, dafür eine dynamische Abfrage zu regeln (also eine Select-Abfrage mit den jeweiligen Parametern).

Gibt es bessere Lösungen, die ich noch nicht gefunden habe?
Eine globale "Datenbankvariable" (in meinem Fall "tgid") wäre m.E. nützlich. Man könnte dann tgid einen Wert zuweisen (in meinem Fall varchar(50)) und künftig würde die View diesen Wert als Parameter benutzen.
Gibt es so etwas?


Stahli
  Mit Zitat antworten Zitat
 


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 14:41 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