2015-01-15 86 views
0

我有以下函數刪除指定字符串設定字符刪除放在性格:功能在SQL Server

ALTER function removalspchar(@Name varchar(30)) 
returns varchar(500) 
As 
Begin 
declare @sub char(1) 

while patindex('%[-:;&, ]%',@Name)>0 
begin 
set @sub=substring(@Name,patindex('%[-:;&, ]%',@Name),1) 
set @Name = replace(@Name,@sub,'') 
end 

return @Name 
End 

select dbo.removalspchar('CORP - Sovereign & Public Finance') 

但下面的函數的輸出中來爲:CORPSovereignPublicFina而非CORPSovereignPublicFinance。

有人可以讓我知道我在做什麼不正確或更好的方式來解決這個問題。

回答

0

也許你應該增加參數(@Name varchar(30))的長度,比如(@Name varchar(100))

+0

噢,謝謝 – user3290807