sql >> Databáze >  >> RDS >> Sqlserver

7645 Nula nebo prázdný fulltextový predikát

Odpověď na to jsem dnes našel při převodu vlastní databáze z SQL 2005 na SQL 2008.

Předejte "" pro hledaný výraz a změňte @search_term ='' test být @search_term = '""' SQL server bude ignorovat dvojité uvozovky a nevyvolá chybu.

Například následující by ve skutečnosti vrátilo všechny záznamy v tabulce 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))

Pokud používáte .Net, můžete si vzít kopii třídy FullTextSearch od E. W. Bachtala. Jeho stránka je velmi informativní:http://ewbi.blogs.com/develops/



  1. Import zazipovaného CSV souboru do PostgreSQL

  2. PostgreSQL dotaz pro počítání/seskupení po dnech a zobrazení dnů bez dat

  3. Oracle:LONG nebo CLOB?

  4. Zřetězení řetězců SQL Server s hodnotou Null