Hallo Claudius, > Oder du nutzt den indexing service und dessen abfrage-funktionen... danke Dir. Bei der Suche nach 'indexing service' und 'Sql Server' bei Google fand ich doch gleich: "Wer kennt das Problem nicht - man soll in einer Tabelle suchen, und zwar nach Textfragmenten ..." von Christoph auf http://www.aspheute.com/artikel/20000703.htm Tja, das w�re sch�n, es geht n�mlich darum, dass B�cher gesucht werden, und zwar mit 'Textfragmenten', die aus den Spalten Autor, Titel, und Ort stammen k�nnen. Naja, nun weiss doch wenigstens, dass ich dem Provider des Kunden damit (wahrscheinlich) nicht kommen kann :-) Hallo G�nther, >schau dir das mal an, koennte mir vorstellen dass dir das hilft. danke, das klingt bei ersten dr�berschauen sehr vielversprechend. Mein Drucker r�delt schon ... Hallo Frank, danke f�r den "Instant Code" Der Analyzer hat nicht einmal gemeckert :-). Ich muss jetzt nur noch herausfinden, warum er momentan keinen Titel bringt, obwohl die Begriffe drin sind .... Gru�, Matthias
----- Original Message ----- From: "Matthias" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Wednesday, June 30, 2004 3:13 PM Subject: Re: [Coffeehouse] SP mit n Parametern > 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 > > _______________________________________________ Coffeehouse Mailingliste, Postings senden an: [EMAIL PROTECTED] An-/Abmeldung und Suchfunktion unter: http://www.glengamoi.com/mailman/listinfo/coffeehouse
