Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Échapper aux guillemets doubles dans SQL 2005/2008

Malheureusement, les guillemets doubles ont une signification particulière dans FTI, donc même si vous les paramétrez, le moteur FTI les traite comme un délimiteur de phrase. Je ne suis pas sûr qu'il existe un moyen simple d'inclure des guillemets doubles dans une recherche FTI. Les crochets sont également un caractère spécial, mais peuvent être placés entre guillemets pour être traités comme un terme de requête - mais pas les guillemets doubles AFAIK.

Mettre à jour

Un peu de recherche suggère que doubler le guillemet en "" peut résoudre le problème - cela vaut la peine d'essayer. Personnellement, je ferais cela à l'intérieur de la base de données, car il s'agit d'un détail d'implémentation de TSQL.

De même, ' doit être doublé en '' avant de passer à FTI (complètement séparé de l'échappement TSQL),