0 / 0
Volver a la versión inglesa de la documentación
No se pueden insertar funciones de cadena con unidades de cadena en el origen de datos remoto " Db2 " en Data Virtualization
Última actualización: 26 nov 2024
No se pueden insertar funciones de cadena con unidades de cadena en el origen de datos remoto Db2 en Data Virtualization

Puede utilizar funciones de serie con unidades de serie de un origen de datos remoto de Db2; sin embargo, la función de serie no se reduce en el origen de datos remoto de Db2.

Síntomas

Puede utilizar funciones de serie con unidades de serie en una consulta y la función de serie no se empuja hacia abajo en el origen de datos remoto de Db2.

Por ejemplo

select SUBSTRING (col13_char, 1, 2,OCTETS) from n1

Resolución del problema

Para resolver este problema, debe establecer las opciones SAME_CODESET y STRING_UNITS. La opción SAME_CODESET proporciona una forma de establecer el atributo de servidor SAME_CODESET externamente. La opción STRING_UNITS proporciona una forma de establecer el atributo de servidor STRING_UNITS externamente. Es el valor de string_units para el origen de datos remoto de Db2.

  1. Obtenga el cid de la tabla dvsys.rdb_connections.
    select cid, url from dvsys.rdb_connections;
  2. Compruebe si el ' codeset ' entre la base de datos local Data Virtualization y la fuente de datos remota ' Db2 ' es el mismo.

    Ejecute el siguiente comando tanto en la base de datos local Data Virtualization como en la fuente de datos remota ' Db2 ' para obtener la configuración de ' codeset '.

    db2 get db cfg for <dbname> | grep "Database code set"

    Donde <dbname> es el nombre de la base de datos y "Database code set" = UTF-8.

    Si el valor es el mismo, puede establecer SAME_CODESET en Y.

  3. Ejecute el mandato siguiente en el origen de datos remoto Db2 para buscar el valor de unidades de serie.
    db2 get db cfg for <dbname> | grep "STRING_UNITS"

    Donde < dbname> es el nombre de la base de datos y la unidad de serie predeterminada ("STRING_UNITS") se establece en SYSTEM.

    Si el valor es SYSTEM, establezca STRING_UNITS en S. Si el valor es CODEUNITS32, establezca STRING_UNITS en C.

  4. Ejecute los mandatos siguientes para especificar la opción SAME_CODESET y STRING_UNITS . Utilice el valor < cid> que ha obtenido del paso 1 y el valor para SAME_CODESET que ha determinado en el paso 2 y el valor para STRING_UNITS que ha determinado en el paso 3.
    alter server qplex options(set <cid>@same_codeset 'Y')
    alter server qplex options(set <cid>@string_units 'S')

    O

     alter server qplex options(set <cid>@same_codeset 'N')
     alter server qplex options(set <cid>@string_units 'C')

Para obtener más información, consulte Cadenas de caracteres en la documentación de Db2.

Búsqueda y respuesta de IA generativa
Estas respuestas las genera un modelo de lenguaje grande en watsonx.ai que se basa en el contenido de la documentación del producto. Más información