There is no built-in function in Microsoft SQL Server to to support URL encoding. If you want to generate URLs with arguments on the fly in stored procedures, you would have to do the URL encoding yourself. URL encoding can be implemented in several ways. Either you can create your own custom userdefined function in Microsoft SQL Server, or create a custom library in .NET. The library can then be called from a stored procedure.
Here I will show how you can encode your URLs using a userdefined function:
CREATE FUNCTION [dbo].[audf_Common_UrlEncode](@strUrl varchar(max))
returns varchar(max)
AS
begin
-- Declare variables
declare @intCount int,
@strChar char(1),
@i int,
@strUrlReturn varchar(max)
-- Initialize variables
set @intCount = Len(@strUrl);
set @i = 1;
set @strUrlReturn = '';
-- Loop through all characters
while (@i <= @intCount)
begin
-- Get the character
set @strChar = substring(@strUrl, @i, 1)
-- Is ASCII character?
if @strChar LIKE '[A-Za-z0-9()''*-._! ]'
begin
-- Just append character
set @strUrlReturn = @strUrlReturn + @strChar
end
else
begin
-- Encode and append character
set @strUrlReturn =
@strUrlReturn +
'%' +
SUBSTRING(sys.fn_varbintohexstr(CAST(@strChar as varbinary(max))),3,2)
end
-- Next character
set @i = @i +1
end
-- Return the encoded URL
return @strUrlReturn
end

Your mode of describing all in this article is genuinely good, all
can easily understand it, Thanks a lot.