2010-11-30 3 views
1

моя проблема в том, что когда я ввожу текст, как «XXX», и нажмите кнопку поиска, он показывает запись только для «XXX». но я хочу показать все записи в верхнем регистре, а также в нижнем регистре «XXX». то я попробую freetext, но он показывает «Неправильный синтаксис рядом с ключевым словом« Freetext ».Проблема FREETEXT на хранимой процедуре

может кто-нибудь сказать мне причину ......

Я использую следующий код для многократного поиска ....

set ANSI_NULLS ON 
set QUOTED_IDENTIFIER ON 
go 
ALTER PROCEDURE [dbo].[sp_searchdetails] 
    @customervendortype varchar(30)=Null, 
    @customervendorid varchar(30)=Null, 
    @customervendorname varchar(30)=Null, 
    @state    varchar(30)=Null, 
    @city    varchar(30)=Null 
AS 
BEGIN 

if @customervendortype is not null and len(@customervendortype)=0 set @customervendortype = null 
if @customervendorid is not null and len(@customervendorid)=0 set @customervendorid = null 
if @customervendorname is not null and len(@customervendorname)=0 set @customervendorname = null 
if @city is not null and len(@city)=0 set @city = null 
if @state is not null and len(@state)=0 set @state = null 

SELECT CustomerVendorDetails.customervendorid,CustomerVendorAddressDetails.customervendorname, CustomerVendorAddressDetails.doorno, CustomerVendorAddressDetails.street, 
CustomerVendorAddressDetails.city, CustomerVendorAddressDetails.state, CustomerVendorAddressDetails.country, 
CustomerVendorAddressDetails.pincode, CustomerVendorDetails.decidingauthority, 
CustomerVendorDetails.landlineno1, CustomerVendorDetails.landlineno2, CustomerVendorDetails.faxno, ContactPersonDetails.contactno, 
ContactPersonDetails.designation 

FROM  
CustomerVendorDetails INNER JOIN 
CustomerVendorAddressDetails ON CustomerVendorDetails.customervendorid = CustomerVendorAddressDetails.customervendorid INNER JOIN 
ContactPersonDetails ON CustomerVendorAddressDetails.customervendorid = ContactPersonDetails.customervendorid 

WHERE 
(@customervendortype is null or CustomerVendorDetails.customervendortype like @customervendortype) and (@customervendorid is null or CustomerVendorDetails.customervendorid like @customervendorid) and Freetext (@customervendorname is null or CustomerVendorDetails.customervendorname like @customervendorname) and Freetext (@city is null or CustomerVendorAddressDetails.city like @city)and Freetext (@state is null or CustomerVendorAddressDetails.state like @state) 

END 

ответ

0

в FREETEXT функции вам не нужно делать некоторые действие просто описывает столбцы (столбцы) и параметры. см. MSDN (второй пример описывает использование переменных)

Смежные вопросы