2012-10-10 31 views
2

这是我的mssql函数代码。VARCHAR'不是公认的内置函数名称

ALTER function [dbo].[UF_GetOrderProducts] 
(
    @OrderId int 
) 
returns varchar(500) 
as 
begin 

return 
    (
    select CAST(VARCHAR(5),OP.ProductId)+'<br/>' 
    from OrderProduct as OP 

    where OP.OrderId = @OrderId 
    for xml path(''), type 
).value('.', 'varchar(500)') 
end 

它返回,VARCHAR' is not a recognized built-in function name.

回答

6
CAST(VARCHAR(5),OP.ProductId) 

应该

CAST(OP.ProductId as VARCHAR(5)) 

MSDN docs

+0

+1 - op最有可能使'CAST'与'CONVERT'混淆 – Lamak

相关问题