Nochmal wegen dem oben. Habe versucht eine Verbindung via ODBC aufzubauen, was auch funktionierte aber ich sah nur die Systemtabellen nicht die normalen Libraries. Könnte das jetzt nicht auch der Fall sein? Das würde erklären warum es nicht funktioniert.

Ich habe die Verbindung zum Server über DB2 UDB-Steuerzentrale getestet. Das funktioniert aber nur über den "Standart". als ich dann in der normalen Steuerzentralensicht auf die tabellen zugreifen wollte, will er sich mit CLI verbinden was aber nicht funktioniert. Wie kann ich die Verbindung auf "Standart" umstellen bzw was muss ich tun damit es mit CLI funktioniert?

EDIT: CLI-Verbindung ist fehlgeschlagen.

SQL30082N Die Verbindung konnte auf Grund der Sicherheitsbedingung "24" ("USERNAME AND/OR PASSWORD INVALID") nicht hergestellt werden. SQLSTATE=08001.
- Aber Pwd und Userid müssen stimmen weil die normale "Standartverbindung" funktioniert.

Bei der Steuerzentrale bekomme ich die Fehlermeldung wenn ich die Tabellen abrufen will:

PHP-Code:
[IBM][CLI Driver][AS] SQL0805N  Paket "NULLID    .SYSSH200" nicht 
gefunden
.  SQLSTATE=51002




Erklärung


 Die 
Anweisung kann nicht beendet werdenda das erforderliche 
Paket im Katalog nicht gefunden wurde
.  

 
Das Paket "<name-des-pakets>" weist eines der folgenden Formate 
auf


o   'paketschema.paketname 0Xkontoken'wobei das Konsistenztoken 
    in hexadezimaler Form angegeben wird
.  

o   'paketschema.paketname.paketversion'.  Wenn die Paketversion  
    eine leere Zeichenfolge ist
fällt der Teil '.paketversion'   
    
weg.  

o   '%.paketname'.  Wenn für den Parameter CURRENT PACKAGE PATH   
    ein Wert festgelegt wird
.  Die Gruppe mit Schemanamen im      
    Parameter CURRENT PACKAGE PATH wird durch das Prozentzeichen  
    
('%'festgelegt.  

 

Mögliche Ursachen für den (SQLCODEdieser Nachricht

o   Das Paket wurde nicht gebunden oder es wurde gelöscht.  

o   Für die Ausführung eines DB2-Dienstprogramms oder einer       
    CLI
-Anwendung kann es erforderlich sein, die               
    
DB2-Dienstprogramme erneut an die Datenbank zu binden.  

o   '%.paketname'.  Wenn für den Parameter CURRENT PACKAGE PATH   
    ein Wert festgelegt wird
jedoch in keinem Schema im          
    Parameter CURRENT PACKAGE PATH ein Paket mit dem Namen       
    
'paketname' gefunden wurde.  

 

 
Wenn die Versions-IDs für paketschema.paketname bereits 
verwendet werden
können Pakete vorhanden seinderen Schema und 
Name übereinstimmen
Das korrekte Paket wird jedoch nicht 
gefunden
da die vorhandenen Pakete nicht mit der erforderlichen 
Version bzw
dem erforderlichen Konsistenztoken übereinstimmen
Für ein Paket müssen alle drei Bestandteile des Paketnamens 
übereinstimmen
Bei Verwendung mehrerer Versionen kann diese 
Nachricht auch aus den folgenden Gründen ausgegeben werden


o   Die Version der ausgeführten Anwendung wurde vorkompiliert,   
    
kompiliertund es wurde eine Verbindung hergestellt.  Die    
    
Anwendung wurde jedoch nicht gebundenoder sie wurde         
    gebunden
aber diese Version des Pakets wurde gelöscht.  

o   Die Anwendung wurde zwar vorkompiliert und gebundenaber sie 
    wurde nicht kompiliert
und/oder es wurde keine Verbindung    
    hergestellt
.  Deshalb ist die ausgeführte Anwendung nicht   
    aktuell
.  

o   Das Paket wurde anhand einer Bindedatei gebunden, die durch   
    eine andere Vorkompilierung der Quellendatei generiert wurde  
    als 
die Vorkompilierungaus der die geänderte Quellendatei   
    hervorging
, die kompiliert und mit der ausführbaren Datei der 
    Anwendung verbunden wurde
.  

o   Eine neue Anwendung wurde mit dem Namen (und der Version)     
    
eines bereits vorhandenen Pakets gebundenso dass das        
    vorhandene Paket ersetzt wurde
.  Wenn die dem ersetzten Paket 
    zugeordnete Anwendung ausgeführt wird
kommt es zu diesem   
    Fehler
.  

In allen genannten Fällen entspricht das Konsistenztoken der 
Anforderung nicht dem Konsistenztoken der vorhandenen Version

Deshalb wird das Paket nicht gefunden.  

 Die 
Anweisung kann nicht verarbeitet werden.  

Benutzeraktion

Korrigieren Sie den Namen des Paketsoder binden Sie das 
Programm
.  Wenn die ausgeführte Anweisung nicht an die Datenbank 
gebunden ist
bitten Sie den Datenbankadministrator, die 
erforderlichen Bindeoperationen durchzuführenStellen Sie sicher,
dass es sich bei der ausgeführten Anwendung bzwdem ausgeführten 
Objektmodul um den kompilierten und verbundenen geänderten 
Quellcode handelt
der dem Befehl PRECOMPILE und BIND zugeordnet 
wurde
der das Paket generiert hat.  

 
Wenn für den Parameter CURRENT PACKAGE PATH ein Wert festgelegt 
wird
stellen Sie sicherdass das Schemain dem das Paket 
enthalten ist
im Parameter CURRENT PACKAGE PATH angegeben 
wird
.  

 Die 
folgenden SQL-Anweisungen können zur Abfrage des Katalogs 
verwendet werden
um festzustellenob unterschiedliche 
Paketversionen vorhanden sind
.  

  
  
SELECT PKGSCHEMAPKGNAMEPKGVERSIONUNIQUE_ID
  FROM SYSCAT
.PACKAGES
  WHERE PKGSCHEMA
='paketschema' und PKGNAME='paketname'.
  
Beachten Siedass die Spalte UNIQUE_ID dem Konsistenztoken 
entspricht
.  

 
Falls die DB2-Dienstprogramme erneut an die Datenbank gebunden 
werden müssen
kann der Datenbankadministrator dies mit einem der 
folgenden CLP
-Befehle vom Unterverzeichnis bnd des Exemplars aus 
vornehmen
während er mit der Datenbank verbunden ist

o   "DB2 bind @db2ubind.lst blocking all grant public" für die   
    
DB2-Dienstprogramme 

o   
"DB2 bind @db2cli.lst blocking all grant public" für CLI.  

 

 
Benutzer eines Systems zusammengeschlossener Datenbanken
Stellen Sie sicherdass die für den Server mit 
zusammengeschlossenen Datenbanken erforderlichen Pakete in den 
entsprechenden Datenquellen gebunden werden
Weitere 
Informationen zum Binden von Paketen enthält das Handbuch Systeme 
zusammengeschlossener Datenbanken 
.  

 
sqlcode :  -805 

 sqlstate 
:  51002 
EDIT2: Teilweise scheint CLI zu funktonieren. Beim Test des Assistenten sagt er "CLI-Verbindung erfolgreich getestet" aber auf Tabellen kann ich trotzdem nicht zugreifen.