I am using the CONTAINS predicate in a full text SQL query in SP2010 Standard. Yes, I'd rather do a Keyword Query, but it doesn't appear to be able to handle what I need.
I have learned things like changing a space to a "+" in all quoted queries, changing a space between words to " OR ", etc.
I have also found that the following characters seem to mess up a query if put in CONTAINS:
My current fix is to simply remove these from the query. This is probably OK for all but the single quote. If a user wants to find "can't" or "O'Reilly" they really need to be able to. I must use a CONTAINS because I have to limit this to certain fields (metadata properties).
I have tried escaping it with \', \', \\', '', , and a few others I can't remember but none have worked for me.
Surprisingly the documentation on this doesn't mention escaping any characters.