Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

7645 Predicato di testo completo nullo o vuoto

Ho trovato la risposta oggi durante la conversione del mio database da SQL 2005 a SQL 2008.

Passa "" per il termine di ricerca e modifica @search_term ='' test per essere @search_term = '""' Il server SQL ignorerà le virgolette e non genererà un errore.

Ad esempio, quanto segue restituirà effettivamente tutti i record nella tabella Utenti:

declare  @SearchTerm nvarchar(250)

SET @SearchTerm = '""'

select UserId, U.Description, U.UserName
from dbo.Users U
WHERE ((@SearchTerm = '""') OR CONTAINS( (U.Description, U.UserName), @SearchTerm))

Se stai usando .Net, potresti prendere una copia della classe FullTextSearch di E. W. Bachtal. Il suo sito è molto informativo:http://ewbi.blogs.com/develops/