2009-05-11 19 views
7

Espero que esto sea fácil de explicar, pero tengo una transformación de búsqueda en uno de mis paquetes de SSIS. Lo estoy usando para buscar el id para un registro emplouyee en una tabla de dimensiones. Sin embargo, mi problema es que algunos de los datos de origen tienen nombres de empleados en todas las mayúsculas (por ejemplo, CHERRERA) y los datos de comparación que uso están en minúsculas (por ejemplo, cherrera).¿Cómo puedo obtener la transformación Búsqueda de SSIS para ignorar el caso alfabético?

La búsqueda está fallando para los registros que no son 100% similares (por ejemplo: cherrera vs cherrera funciona bien - cherrera vs CHERRERA falla). ¿Hay alguna manera de hacer que la transformación de búsqueda ignore el caso en un tipo de datos de cadena/varchar?

Respuesta

12

No hay una manera en que yo crea que la transformación no distinga entre mayúsculas y minúsculas. Sin embargo, puede modificar la declaración SQL para su transformación para asegurarse de que los datos de origen coinciden con los datos de comparación utilizando LOWER() función de cadena

+0

solución perfecta - puse una columna derivada transformar antes de mi búsqueda que acaba de solicitar INFERIOR() a la columna. Funciona muy bien :-) – rrydman

+0

bingo! buen trabajo perezoso DBA. – D3vtr0n

1

Debe cambiar la fuente y además buscar datos, ambos deben estar en el mismo tipo de caso.

7

Establezca la propiedad CacheType de la transformación de búsqueda en Parcial o Ninguna.

Las comparaciones de búsqueda se realizarán ahora por SQL Server y no por el componente de búsqueda SSIS, y ya no serán sensibles a mayúsculas y minúsculas.

Para obtener más información, véase here

0

Base en este Microsoft Article:. Caso

"Las búsquedas realizadas por la transformación Búsqueda son sensibles Para evitar errores de búsqueda que son causadas por diferencias de casos en los datos, de primer uso la transformación del Mapa de caracteres para convertir los datos a mayúsculas o minúsculas. Luego, incluya las funciones MAYOR o INFERIOR en la instrucción SQL que genera la tabla de referencia "

Leer más sobre Carácter transformación Mapa, siga este enlace"

Cuestiones relacionadas