0 / 0
Retourner à la version anglaise de la documentation
Dépannage des common core services
Dernière mise à jour : 11 nov. 2024
Dépannage des common core services

Utilisez ces solutions pour résoudre les problèmes que vous pourriez rencontrer avec les connexions.

IBM Db2 for z/OS: Erreur de récupération de la liste des schémas lorsque vous essayez de vous connecter à un serveur Db2 for z/OS

Lorsque vous testez la connexion à un serveur Db2 for z/OS et que la connexion ne peut pas récupérer la liste des schémas, vous pouvez recevoir l'erreur suivante :

CDICC7002E: The assets request failed: CDICO2064E: The metadata for the column TABLE_SCHEM could not
 be obtained: Sql error: [jcc][10150] [10300][4.28.11] Invalid parameter: Unknown column name
 TABLE_SCHEM. ERRORCODE=-4460, SQLSTATE=null

Résolution du problème

Sur le serveur Db2 for z/OS, attribuez la valeur " No au paramètre DESCSTAT du sous-système. Pour plus d'informations, voir le champ DESCRIBE FOR STATIC (paramètre du sous-système DESCSTAT).

Impossible d'exécuter le code généré à partir d'une fonctionnalité obsolète pour charger les données d'une connexion Informix

Vous recevez un message "DatabaseError: L'exécution a échoué sur sql : ... unable to rollback" lors de l'exécution du code généré pour charger des données à partir d'une base de données Informix lors de l'utilisation de la fonctionnalité dépréciée et si vous essayez d'interroger une table dont le nom est en majuscule.

Raison

La base de données Informix est configurée pour des identifiants sensibles à la casse et vous devez mettre à jour le code généré.

Résolution du problème

Si vous le pouvez, passez à l'utilisation du code généré par le Flight service pour charger des données à partir d'une connexion Informix. Si vous souhaitez continuer à utiliser le code généré par la fonctionnalité obsolète, vous devez modifier le code généré comme suit :

  • Pour Python, ajoutez la propriété de connexion " 'DELIMIDENT=Y' à la connexion et entourez l'identifiant en majuscules de guillemets doubles (""). Remplacez les lignes suivantes :

    Informix_connection = jaydebeapi.connect('com.informix.jdbc.IfxDriver',
    '{}://{}:{}/{}:user={};password={};'.format('jdbc:informix-sqli',
    Informix_metadata['host'],
    Informix_metadata['port'],
    Informix_metadata['database'],
    Informix_metadata['username'],
    Informix_metadata['password']),
    [Informix_metadata['username'],
    Informix_metadata['password']])
    
    query = 'SELECT * FROM informix.FVT_EMPLOYEE'
    

    Avec :

    Informix_connection = jaydebeapi.connect('com.informix.jdbc.IfxDriver',
    '{}://{}:{}/{}:user={};password={};DELIMIDENT=Y;'.format('jdbc:informix-sqli',
    Informix_metadata['host'],
    Informix_metadata['port'],
    Informix_metadata['database'],
    Informix_metadata['username'],
    Informix_metadata['password']),
    [Informix_metadata['username'],
    Informix_metadata['password']])
    
    query = 'SELECT * FROM informix."FVT_EMPLOYEE"'
    
  • Pour Spark avec Python, remplacer :

    data_df_0 = sparkSession.read.format('jdbc') \
      .option('url', 'jdbc:informix-sqli://{}:{}/{}'.format(Informix_metadata['host'],Informix_metadata['port'],Informix_metadata['database'])) \
      .option('dbtable', 'informix.FVT_EMPLOYEE') \
      .option('user', Informix_metadata['username']) \
      .option('password', Informix_metadata['password']).load()
    data_df_0.show(5)
    

    Avec :

    data_df_0 = sparkSession.read.format('jdbc') \
      .option('url', 'jdbc:informix-sqli://{}:{}/{}'.format(Informix_metadata['host'],Informix_metadata['port'],Informix_metadata['database'])) \
      .option('dbtable', 'informix."FVT_EMPLOYEE"') \
      .option('DELIMIDENT', 'Y') \
      .option('user', Informix_metadata['username']) \
      .option('password', Informix_metadata['password']).load()
    data_df_0.show(5)
    
  • Pour R, ajoutez la propriété de connexion " 'DELIMIDENT=Y' à la connexion et entourez tous les noms en majuscules de guillemets (""). Remplacez les lignes suivantes :

    paste("jdbc:informix-sqli://", Informix_credentials[][["host"]], ":", Informix_credentials[][["port"]],
    "/", Informix_credentials[][["database"]],
    ":user=", Informix_credentials[][["username"]],
    ";password=", Informix_credentials[][["password"]], ";", sep=""),
    ...
    query <- "SELECT * FROM myschema.MY_TABLE"
    

    Avec :

    paste("jdbc:informix-sqli://", Informix_credentials[][["host"]], ":", Informix_credentials[][["port"]],
    "/", Informix_credentials[][["database"]],
    ":user=", Informix_credentials[][["username"]],
    ";password=", Informix_credentials[][["password"]],";DELIMIDENT=Y", ";", sep=""),
    ...
    query <- "SELECT * FROM myschema.\"MY_TABLE\""
    

Sujet parent : Résolution des problèmes dans Cloud Pak for Data

Recherche et réponse à l'IA générative
Ces réponses sont générées par un modèle de langue de grande taille dans watsonx.ai en fonction du contenu de la documentation du produit. En savoir plus