Announcement

Collapse
No announcement yet.

Erg. einer SP dynamisch zusammensetzen?

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Erg. einer SP dynamisch zusammensetzen?

    Hallo,

    ich wollte mal fragen, ob es möglich ist eine SP in ihrer Ausgabe dynamisch zusammen zu setzen?

    Ein Beispiel einer normalen SP:

    SELECT * FROM T_Beispiel WHERE PK_ID = @PK_ID

    Eine dynamische könnte ich mir so vorstellen:

    SELECT * FROM T_Beispiel
    IF (@PK_ID = - 1)
    WHERE PK_ID = @PK_ID AND Text = "Bla"
    ELSE
    WHERE PK_ID = @PK_ID

    Egal, ob die Syntax jetzt stimmt, ich denke jeder weiß was gemeint ist.. hoffe ich. *g*

    Im Prinzip geht es um die Beeinflußung der Ergebnismenge und Verarbeitung der SP.

    Ich denke mal nicht, dass das geht.
    Finden konnt ich bis jetzt zumindest nichts.

    Thx und MfG

  • #2
    Hallo,

    na klar gibt es da Möglichkeiten! T-SQL bietet dir dafür verschiedene Ansätze. Wenn ich dein Problem richtig verstanden habe, dann würde ich so vorgehen:
    <pre>
    Create Procedure dbo.TestProc
    (
    @PK_ID int
    )
    as
    --
    declare
    @vcSearch as varchar(100)
    set @vcSearch = '%'
    if @PK_ID = -1 set @vcSearch = 'Bla'
    --
    select *
    from T_Beispiel
    where
    PK_ID = @PK_ID and Text like @vcSearch
    </pre>
    Das ist natürlich nur eine der vielen Möglichkeiten die SQL-Server bietet. Mit der Version 2005 kannst du sogar beinahe alle Klassen des .net Frameworks benutzen.

    Ich hoffe, das Beispiel bringt dich auf neue Ideen.
    Gruß Ola

    Comment


    • #3
      Hier gibt es einen tollen Artikel dazu:
      http://www.insidesql.de/content/view/164/29/<br>
      bye, Helmu

      Comment


      • #4
        Danke für die guten Antworten.
        Den Artikel werd ich gleich mal durchlesen.

        MfG
        deityso

        Comment

        Working...
        X