Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

7645 Нулев или празен предикат на пълен текст

Намерих отговора на това днес, когато конвертирах моята собствена база данни от SQL 2005 в SQL 2008.

Предайте "" за вашата дума за търсене и променете @search_term ='' тест да бъде @search_term = '""' SQL сървърът ще игнорира двойните кавички и няма да изведе грешка.

Например, следното всъщност връща всички записи в таблицата Users:

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))

Ако използвате .Net, можете да вземете копие на класа FullTextSearch на E. W. Bachtal. Сайтът му е много информативен:http://ewbi.blogs.com/develops/



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Основи на дневника на транзакциите на SQL Server

  2. Намерете стойност навсякъде в база данни

  3. Завъртане с помощта на SQL Server 2000

  4. Използвайте SCOPE_IDENTITY(), за да върнете последно въведената стойност на самоличността в същия обхват (SQL сървър)

  5. Добавете връзка с външен ключ между две бази данни