Pregunta

Esperamos que esto es fácil de explicar, pero tengo una transformación de búsqueda en uno de mis paquetes SSIS. Lo estoy usando para buscar el ID de un registro emplouyee en una tabla de dimensiones. Sin embargo, mi problema es que algunos de los datos de origen tienen nombres de los empleados en todas las capitales (ex: CHERRERA) y la comparación de datos im utilizando es todo en minúsculas (por ejemplo: cherrera).

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

¿Fue útil?

Solución

No hay una manera que yo creo que hacer la transformación sea sensible a las mayúsculas, sin embargo, puede modificar la sentencia SQL para su transformación para asegurar que los datos de origen coincide con el caso de los datos de comparación utilizando la cadena INFERIOR () función.

Otros consejos

Establecer la propiedad CacheType de la transformación Búsqueda en Parcial o Ninguna.

Las comparaciones de búsqueda ahora serán realizadas por SQL Server y no por el componente de búsqueda de SSIS, y ya no estarán entre mayúsculas y minúsculas.

Hay que cambiar la fuente y así como consultar los datos, ambos deben estar en el mismo tipo de caso.

Con base en este artículo Microsoft :

  

Las búsquedas realizadas por la transformación Búsqueda mayúsculas y minúsculas. Para evitar errores de búsqueda que son causadas por diferencias de casos en los datos, utilice primero la transformación Mapa de caracteres para convertir los datos en mayúsculas o minúsculas. A continuación, incluir la parte superior o funciones más bajo en la instrucción SQL que genera la tabla de referencia

Para obtener más información sobre transformación Mapa de caracteres , siga este enlace "

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top