0 / 0
Zurück zur englischen Version der Dokumentation
Fehlerbehebung bei common core services
Letzte Aktualisierung: 22. Nov. 2024
Fehlerbehebung bei common core services

Verwenden Sie diese Lösungen, um Probleme zu beheben, die bei Verbindungen auftreten können.

IBM Db2 for z/OS: Fehler beim Abrufen der Schemaliste, wenn Sie versuchen, eine Verbindung zu einem Db2 for z/OS herzustellen

Wenn Sie die Verbindung zu einem Db2 for z/OS testen und die Verbindung die Schemaliste nicht abrufen kann, wird möglicherweise der folgende Fehler angezeigt:

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

Problemlösung

Setzen Sie auf dem Db2 for z/OS den Subsystemparameter DESCSTAT auf " No. Weitere Informationen finden Sie im Feld DESCRIBE FOR STATIC (Subsystemparameter DESCSTAT).

Generierter Code aus veralteter Funktionalität kann nicht ausgeführt werden, um Daten für eine Informix zu laden

Sie erhalten einen "DatabaseError: Ausführung fehlgeschlagen bei Sql: ... unable to rollback" beim Ausführen des Codes, der zum Laden von Daten aus einer Informix generiert wird, wenn die veraltete Funktionalität verwendet wird und Sie versuchen, eine Tabelle mit einem Namen in Großbuchstaben abzufragen.

Ursache

Die Informix ist für Bezeichner konfiguriert, bei denen die Groß- und Kleinschreibung beachtet wird, und Sie müssen den generierten Code aktualisieren.

Problemlösung

Wenn Sie können, wechseln Sie zu dem Code, der mit dem Flight service generiert wird, um Daten aus einer Informix zu laden. Wenn Sie den von der veralteten Funktionalität generierten Code weiterhin verwenden möchten, müssen Sie den generierten Code wie folgt bearbeiten:

  • Für Python fügen Sie die Verbindungseigenschaft " 'DELIMIDENT=Y' zur Verbindung hinzu und umgeben den Bezeichner in Großbuchstaben mit doppelten Anführungszeichen (""). Ersetzen Sie die folgenden Zeilen:

    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'
    

    Mit:

    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"'
    
  • Für Spark mit Python, ersetzen Sie:

    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)
    

    Mit:

    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)
    
  • Für R fügen Sie die Verbindungseigenschaft " 'DELIMIDENT=Y' zur Verbindung hinzu und umgeben alle Namen in Großbuchstaben mit doppelten Anführungszeichen (""). Ersetzen Sie die folgenden Zeilen:

    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"
    

    Mit:

    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\""
    

Übergeordnetes Thema: Fehlerbehebung bei Problemen in Cloud Pak for Data

Generative KI-Suche und -Antwort
Diese Antworten werden von einem großen Sprachmodell in watsonx.ai basierend auf dem Inhalt der Produktdokumentation generiert. Weitere Informationen