VARCHAR' is not a recognized built-in function name

function, sql-server, varchar

Solution

CAST(VARCHAR(5),OP.ProductId)

should be

CAST(OP.ProductId as VARCHAR(5)) 

See the MSDN docs.

Problem

Here is my mssql function code. ``` 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 ``` It returns, `VARCHAR' is not a recognized built-in function name.`

Original source