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

Antwort per Email an