Tratar Cadenas

29/05/2006 - 22:02 por Pablo Rodríguez | Informe spam
Hola, estoy haciendo un proc para corregir algunos miles de ingresos
desprolijos de usuarios que ingresaron algunos registros en MAYÚSCULAS,
otros en minúsculas, otros en Versales y así, mi intención es convertir esas
cadenas a Versales... entonces empecé así

CREATE PROCEDURE sp_NormalizarNombres
AS
BEGIN
UPDATE tblSocio
SET Nombre = UPPER(SUBSTRING(Nombre, 1 ,1)) + LOWER(SUBSTRING(Nombre, 2,
LEN(Nombre) - 1))
END

Eso funciona perfectamente... a menos que tenga un campo con dos nombres por
ejemplo "Juan Carlos", entonces necesito tratar a "Carlos" por separado,
para que no me quede "Juan carlos" ... se me ocurrió buscar un espacio y
entonces cambiar la letra siguiente, pero no se que función utilizar para
saber si hay un espacio.

Agradezco de antemano la ayuda que me puedan brindar.

Saludos!!!

Preguntas similare

Leer las respuestas

#1 BitOne®
29/05/2006 - 23:03 | Informe spam
charindex

Saludos,

BitOne®

"Pablo Rodríguez" wrote in message
news:
Hola, estoy haciendo un proc para corregir algunos miles de ingresos
desprolijos de usuarios que ingresaron algunos registros en MAYÚSCULAS,
otros en minúsculas, otros en Versales y así, mi intención es convertir


esas
cadenas a Versales... entonces empecé así

CREATE PROCEDURE sp_NormalizarNombres
AS
BEGIN
UPDATE tblSocio
SET Nombre = UPPER(SUBSTRING(Nombre, 1 ,1)) + LOWER(SUBSTRING(Nombre,


2,
LEN(Nombre) - 1))
END

Eso funciona perfectamente... a menos que tenga un campo con dos nombres


por
ejemplo "Juan Carlos", entonces necesito tratar a "Carlos" por separado,
para que no me quede "Juan carlos" ... se me ocurrió buscar un espacio y
entonces cambiar la letra siguiente, pero no se que función utilizar para
saber si hay un espacio.

Agradezco de antemano la ayuda que me puedan brindar.

Saludos!!!


Respuesta Responder a este mensaje
#2 Isaias
29/05/2006 - 23:04 | Informe spam
Pablo

Busca por CHARINDEX y PATINDEX

Aunque no soy muy de la idea guardar los datos "FORMATEADOS" (Isaías Islas
González), creo que esto deberia ser algo que tu aplicativo deberi hacer.

Saludos
Saludos
IIslas


"Pablo Rodríguez" escribió:

Hola, estoy haciendo un proc para corregir algunos miles de ingresos
desprolijos de usuarios que ingresaron algunos registros en MAYÚSCULAS,
otros en minúsculas, otros en Versales y así, mi intención es convertir esas
cadenas a Versales... entonces empecé así

CREATE PROCEDURE sp_NormalizarNombres
AS
BEGIN
UPDATE tblSocio
SET Nombre = UPPER(SUBSTRING(Nombre, 1 ,1)) + LOWER(SUBSTRING(Nombre, 2,
LEN(Nombre) - 1))
END

Eso funciona perfectamente... a menos que tenga un campo con dos nombres por
ejemplo "Juan Carlos", entonces necesito tratar a "Carlos" por separado,
para que no me quede "Juan carlos" ... se me ocurrió buscar un espacio y
entonces cambiar la letra siguiente, pero no se que función utilizar para
saber si hay un espacio.

Agradezco de antemano la ayuda que me puedan brindar.

Saludos!!!



Respuesta Responder a este mensaje
#3 Pablo Rodríguez
29/05/2006 - 23:41 | Informe spam
Se que es algo que mi app debería controlar, pero es que tengo que corregir
datos que ya fueron ingresados,
lamentablemente cuando empecé esta app no contaba con la variedad de
combinaciones de mayúsculas y minúsculas que los usuarios podrían llegar a
utilizar para ingresar nombres... lamentablemente asumí algo que no debía...


"Isaias" escribió en el mensaje
news:
Pablo

Busca por CHARINDEX y PATINDEX

Aunque no soy muy de la idea guardar los datos "FORMATEADOS" (Isaías Islas
González), creo que esto deberia ser algo que tu aplicativo deberi hacer.

Saludos
Saludos
IIslas


"Pablo Rodríguez" escribió:

Hola, estoy haciendo un proc para corregir algunos miles de ingresos
desprolijos de usuarios que ingresaron algunos registros en MAYÚSCULAS,
otros en minúsculas, otros en Versales y así, mi intención es convertir
esas
cadenas a Versales... entonces empecé así

CREATE PROCEDURE sp_NormalizarNombres
AS
BEGIN
UPDATE tblSocio
SET Nombre = UPPER(SUBSTRING(Nombre, 1 ,1)) + LOWER(SUBSTRING(Nombre,
2,
LEN(Nombre) - 1))
END

Eso funciona perfectamente... a menos que tenga un campo con dos nombres
por
ejemplo "Juan Carlos", entonces necesito tratar a "Carlos" por separado,
para que no me quede "Juan carlos" ... se me ocurrió buscar un espacio y
entonces cambiar la letra siguiente, pero no se que función utilizar para
saber si hay un espacio.

Agradezco de antemano la ayuda que me puedan brindar.

Saludos!!!



email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida