Revision: 50406
Initial Code
Initial URL
Initial Description
Initial Title
Initial Tags
Initial Language
at August 19, 2011 21:29 by dactivo
Initial Code
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author: <Author,,Name>
-- Create date: <Create Date,,>
-- Description: <Description,,>
-- =============================================
alter PROCEDURE dbo.CrearURLNoticias
AS
BEGIN
declare @titulo varchar(500),@titulofinal nvarchar(255),
@s1 nvarchar(255),@s2 nvarchar(255), @anterior nvarchar(1), @nuevo nvarchar(1)
,@iter int,@permitidos nvarchar(255)
set @s1= 'ÃÂÃÄÉÊËÃÃŽÃÓÕÔÖÙÛÚÜà áäâãèéëêîìïÃòöóõôùûúü'
set @s2 = 'AAAAEEEIIIOOOOUUUUaaaaaeeeeiiiiooooouuuu'
set @permitidos='abcdefghjklmnopqrstuvwxyz0123456789-'
DECLARE Datos CURSOR FOR
select title from NewsPages where titleUrl is null or ltrim(rtrim(titleUrl)) =''
OPEN Datos
FETCH NEXT FROM Datos INTO @titulo
WHILE ((@@FETCH_STATUS = 0))
BEGIN
set @titulofinal=@titulo
set @titulofinal=Ltrim(RTrim(@titulofinal))
set @titulofinal=REPLACE(@titulofinal,' ','-')
set @titulofinal=REPLACE(@titulofinal,'ñ','nh')
set @titulofinal=REPLACE(@titulofinal,'á','a')
set @titulofinal=REPLACE(@titulofinal,'é','e')
set @titulofinal=REPLACE(@titulofinal,'í','i')
set @titulofinal=REPLACE(@titulofinal,'ó','o')
set @titulofinal=REPLACE(@titulofinal,'ú','u')
set @titulofinal=REPLACE(@titulofinal,'ñ','nh')
set @iter = 0
if (len(@titulofinal) != 0)
begin
WHILE @iter<len(@s1)
begin
set @anterior = substring(@s1,@iter,1);
set @nuevo = substring(@s2,@iter,1);
set @titulofinal = Replace(@titulofinal,@anterior, @nuevo);
set @iter=@iter+1
end
end
set @titulofinal=Lower(@titulofinal)
While PatIndex('%[^a-zA-Z0-9 -]%', @titulofinal) > 0
Set @titulofinal = Stuff(@titulofinal, PatIndex('%[^a-zA-Z0-9 -]%', @titulofinal), 1, '')
print @titulofinal
FETCH NEXT FROM Datos INTO @titulo
END
CLOSE Datos
DEALLOCATE Datos
end
GO
Initial URL
Initial Description
Initial Title
sql server - sanitize url
Initial Tags
Initial Language
SQL