Huiiii ... ich war gerade mal essen ... vielen Dank erstmal an alle! Bis gleich 
vielleicht ... ;-)
Matthias


----- Original Message ----- 
From: "Frank Matthiesen" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Wednesday, June 30, 2004 2:53 PM
Subject: Re: [Coffeehouse] SP mit n Parametern


> Matthias wrote:
>
> > Nahezu alle Suchmasken bieten doch die M�glichkeit, mehrere Begriffe
> > einzugeben.
> > Das m�chte ich aber mit einer SP realisieren, und dabei macht mich
> > die Tatsache, dass ich vorher nicht weiss, wieviele Begriffe der
> > Benutzer eingeben wird, ziemlich ratlos. Kann mir jemand einen Tip
> > geben?
>
>
> Hallo Matthias,
>
> vergiss dynamisches SQL (IMHO ist das Dreck)
> Ich gehe mal davon aus, dass Du in Deiner SP eine Spalte mit mehreren
> Begriffen abfragen willst.
> Normale Vorgehensweise:
> SELECT bla FROM table WHERE Spalte1 = 'begriff1' AND Spalte1 = 'begriff2'
> usw
>
> Wenn Du nun nicht weisst, wieviel Begriffe an die SP �bergeben werden,
> siehst Du ziemlich alt aus
> L�sung:
>
> 1.) Anlegen einer benutzerdefinierten Funktion:
> Quellcode
> CREATE FUNCTION charlist_to_table
>                   (@list      nvarchar(4000),
>                    @delimiter nchar(1) = ',')
>        RETURNS @tbl TABLE (str nvarchar(4000)) AS
>    BEGIN
>       DECLARE @pos int
>       DECLARE @tmpval nvarchar(4000)
>       SET @pos = charindex(@delimiter, @list)
>       WHILE @pos > 0
>       BEGIN
>          SET @tmpval = left(@list, charindex(@delimiter, @list) - 1)
>          INSERT @tbl (str) VALUES(@tmpval)
>          SET @list = substring(@list, @pos + 1, len(@list))
>          SET @pos = charindex(@delimiter, @list)
>       END
>       INSERT @tbl (str) VALUES(@list)
>    RETURN
>    END
>
>
> 2.) Quellcode SP:
> CREATE PROCEDURE sp_meinesuch_sp
> @suchbegriffe varchar (5000)
> AS
> DECLARE @delimiter nchar(1)
> SET @delimiter =','
>
>  SELECT * FROM myTable WHERE Spalte1 IN (SELECT * FROM
> dbo.charlist_to_table(@suchbegriffe,@delimiter)  )
>
>
> 3.) Aufruf der SP:
>
> EXEC sp_meinesuch_sp 'Begriff1,Begriff2, Begriff3'
>
>
> Gruss
>
> Frank
>
>
>
>
> _______________________________________________
> Coffeehouse Mailingliste, Postings senden an:
> [EMAIL PROTECTED]
> An-/Abmeldung und Suchfunktion unter:
> http://www.glengamoi.com/mailman/listinfo/coffeehouse
>
>



_______________________________________________
Coffeehouse Mailingliste, Postings senden an:
[EMAIL PROTECTED]
An-/Abmeldung und Suchfunktion unter:
http://www.glengamoi.com/mailman/listinfo/coffeehouse

Antwort per Email an