Hola
Estoy tratando de insertar cadenas de texto dentro de un campo de una tabla
pero quisiera que esta cadena esté justificada a la derecha del límite de la
columna.
Escribí estas líneas en un stored procedure en MSSQL7, pero no funcionó:
INSERT INTO Empleados (Numero, Nombre)
VALUES (@Numero, SPACE(150 - LEN(@Nombre)) + @Nombre)
Supongamos que el tipo de datos de la columna 'Nombre' es varchar(150).
Si inserto una cadena para @Nombre con un valor pequeño, sí es alineado a la
derecha,
el problema viene cuando los siguientes valores de @Nombre varían mucho en
tamaño,
ya sea si son muy grandes los nombres o muy pequeños en comparación unos con
otros.
Por ejemplo, si para mi primer registro selecciono @Nombre = 'mundo' ésta
palabra se alinea
a la derecha de mi columna, pero cuando agrego otro valor, supongamos
@Nombre = 'esta es otra linea de texto', si yo visualizo el contenido de mi
tabla en MSSQL,
mi valor previo (mundo) es movido a otra posición dentro de la columna, como
si estuviera
alineado al centro de acuerdo al nuevo valor insertado.
Tal vez la razón sean los espacios en blanco dentro de la cadena, que son
comprimidos o no.
Cómo puedo remediar esto?
Leer las respuestas