Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
I provider di dati per DB2 utilizzano la procedura memorizzata IBM SQLCAMESSAGE per restituire messaggi di errore dettagliati. Per usare questa funzionalità, è necessario configurare l'origine dati per utilizzare un valore EBCDIC per Host CCSID.
Nella tabella seguente vengono descritti gli errori del server DB2 che possono verificarsi insieme alle azioni da eseguire per correggerli.
| SQLSTATE | SQLCODE | Message | Descrizione |
|---|---|---|---|
| 42601 | -104 | Simbolo non valido. Token non valido, token imprevisto. È stato trovato un token imprevisto <token> dopo <il testo>. I token previsti possono includere: <token-list>. |
Motivo: il server non può eseguire un'istruzione SQL contenente simboli o token illegali, non validi o imprevisti. Azione: verificare la sintassi SQL usando il riferimento SQL IBM DB2 per la piattaforma e la versione IBM DB2 specifiche. Controllare se l'applicazione consumer di dati usa identificatori di oggetto delimitati non supportati (ad esempio parentesi quadre ([<object-name>]) anziché usare delimitatori supportati (virgolette doppie). |
| 42602 | -113 | CARATTERE NON VALIDO TROVATO IN: <stringa>, REASON CODE <reason-code>. È stato rilevato un carattere non valido in un nome. <l'identificatore> contiene un carattere non consentito o non contiene caratteri. |
Motivo: il server non può elaborare un'istruzione SQL SET CURRENT SQLID quando il client si connette al server DB2. Azione: verificare le informazioni di connessione per verificare che il valore Qualificatore predefinito corrisponda all'insieme DB2 in cui è catalogato l'oggetto. Per ulteriori informazioni, consultare "Qualificatore predefinito." |
| 42802 | -117 | IL NUMERO DI VALORI ASSEGNATI NON CORRISPONDE AL NUMERO DI COLONNE SPECIFICATE O IMPLICITE. L'istruzione contiene un numero errato di valori. Il numero di valori assegnati non corrisponde al numero di colonne o variabili specificate o implicite. |
Motivo: il server non può eseguire un'istruzione SQL INSERT quando il numero di valori specificati non corrisponde al numero di colonne nelle tabelle. Azione: verificare che il numero di colonne corrisponda agli oggetti nell'istruzione SQL eseguendo una query sul catalogo di sistema, ad esempio SYSIBM. SYSCOLUMNS) o esecuzione di una query dello schema client (ad esempio, OLE DB IDBSchemaRowsets::GetSchemas(DBSCHEMA_COLUMNS) o ADO.NET MsDb2Connection.GetSchema(Columns). |
| 22007 | -181 | LA RAPPRESENTAZIONE DI STRINGA DI UN VALORE DATETIME NON È UN VALORE DATETIME VALIDO Valore nella stringa di data, ora o timestamp non valido. La rappresentazione di stringa di un valore di data e ora è fuori intervallo. |
Motivo: il server non può eseguire l'istruzione SQL in cui un valore DATETIME non è formattato correttamente o non compreso nell'intervallo. Azione: verificare che i valori DATETIME siano compresi nell'intervallo supportato per l'anno 0001-9999, mese di 1-12, giorno del 28/29/30/31 (a seconda del mese e dell'anno bisestile), ora di 0-24 (12 per USA), minuti di 0-59, secondi di 0-59 e microsecondi di 0-999999. Controllare le informazioni di connessione per assicurarsi che l'opzione DateTime As Date sia impostata su True per indicare al client di eliminare la parte relativa all'ora dei valori dei dati DateTime di Windows mappati ai valori dei dati DB2 Timestamp, consentendo al database DB2 di leggere questi valori come valori di dati di data DB2. Per altre informazioni, vedere DateTime As Date. |
| 42704 | -204 |
<schema>.<l'oggetto> è un nome non identificato. È stato rilevato un oggetto o un nome di vincolo non definito. <name> è un nome non definito. |
Motivo: il server non può eseguire un'istruzione SQL che fa riferimento a uno schema< non valido>.<nome dell'oggetto>. Azione: verificare il nome dell'oggetto specificato nell'istruzione SQL. Controllare le informazioni di connessione per verificare che il valore Qualificatore predefinito corrisponda all'insieme DB2 in cui è catalogato l'oggetto. Per altre informazioni, vedere Qualificatore predefinito. |
| 42703 | -206 |
<NOME> NON VALIDO NEL CONTESTO IN CUI VIENE USATO Colonna< nome> non nelle tabelle specificate. <name> non è valido nel contesto in cui viene usato. |
Motivo: il server non può eseguire un'istruzione SQL in cui un nome di colonna specificato non è una colonna della tabella di origine o di destinazione o vista a cui si fa riferimento all'istruzione . Azione: verificare che i riferimenti alle colonne corrispondano agli oggetti nell'istruzione SQL eseguendo una query sul catalogo di sistema, ad esempio SYSIBM. SYSCOLUMNS) o esecuzione di una query dello schema client (ad esempio, OLE DB IDBSchemaRowsets::GetSchemas(DBSCHEMA_COLUMNS) o ADO.NET MsDb2Connection.GetSchema(Columns). |
| 08S01 | -360 | Impossibile trovare la risorsa host. Verificare che il valore catalogo iniziale corrisponda al nome della risorsa host. | Motivo: il server non è riuscito a connettere il client all'RDBNAM DRDA richiesto (Nome database relazionale). Azione: verificare le informazioni di connessione per assicurarsi che il valore del catalogo iniziale corrisponda a DB2 per il nome della posizione z/OS, DB2 per la voce di directory del database relazionale di IBM i (RDBDIRE) oppure DB2 per il nome del database Windows. Per altre informazioni, vedere Catalogo iniziale. |
| 42884 | -440 | NESSUN <tipo di> routine CON IL NOME <routine-name> CHE HA ARGOMENTI COMPATIBILI È STATO TROVATO NEL PERCORSO CORRENTE Nessuna routine trovata con il nome e gli argomenti compatibili specificati. Non è stata trovata alcuna routine autorizzata chiamata <routine-name> di tipo <routine-type> con argomenti compatibili. |
Motivo: il server non può eseguire un'istruzione SQL CALL contenente il numero errato di argomenti o tipi di dati di parametro non validi oppure fa riferimento a uno schema< non valido>.<nome dell'oggetto>. Azione: verificare il numero di argomenti. Controllare i tipi di dati dei parametri. Verificare il nome dell'oggetto specificato nell'istruzione SQL. Controllare le informazioni di connessione per verificare che il valore Qualificatore predefinito corrisponda all'insieme DB2 in cui è catalogato l'oggetto. Per ulteriori informazioni, consulta Qualificatore predefinito. |
| 24501 | -501 | IL CURSORE IDENTIFICATO IN UN'ISTRUZIONE FETCH O CLOSE NON È APERTO. Il cursore <nome cursore> non è aperto. Il cursore specificato in un'istruzione FETCH o CLOSE non è aperto o una variabile di cursore in un riferimento a funzione scalare del cursore non è aperta. |
Motivo: il server non può eseguire un'istruzione SQL SELECT o CALL che richiede un'istruzione FETCH o CLOSE su un CURSOR che non si trova in uno stato aperto. Azione: verificare che l'applicazione non emetta commit o ROLLBACK, che potrebbe chiudere il cursore. Verificare la presenza di un messaggio restituito ricevuto in precedenza che potrebbe indicare che il server ha chiuso automaticamente il cursore in base a un evento di sistema(ad esempio, SQLCODE -404, -652, -679, -802, -901, -904, -909, -910, -911, -913 o -952). Verificare le informazioni di connessione per assicurarsi che l'opzione AutoCommit sia impostata su True quando si usano alcuni consumer generici, tra cui SQL Server Integration Services e Distributed Query Processor, quando si usano unità di lavoro remote. Per altre informazioni, vedere AutoCommit. |
| 42501 | -551 | Non autorizzato a opporsi. Non autorizzato a <object-name> nel tipo <resource-name><resource-type>. <authorization-ID> non dispone dell'autorizzazione o del privilegio necessario per eseguire l'operazione <sul> oggetto <object-name>. |
Motivo: il server non può eseguire un'istruzione SQL SELECT o CALL che richiede un'istruzione CURSOR archiviata in un pacchetto SQL statico a cui l'utente corrente non è autorizzato. Il client si basa su istruzioni SQL predefinite nelle sezioni all'interno di pacchetti SQL statici DB2 per supportare l'esecuzione di istruzioni SQL SELECT. Per impostazione predefinita, il client definisce automaticamente un pacchetto, se l'utente di runtime dispone dell'autorità BIND, EXECUTE e GRANT del pacchetto sulla raccolta DB2 specificata nella proprietà di connessione Raccolta pacchetti. Azione: verificare le informazioni di connessione per assicurarsi che il valore raccolta pacchetti corrisponda alla raccolta DB2 in cui i pacchetti HIS 2010 sono definiti per l'esecuzione in base all'identificatore utente corrente o PUBLIC. Creare manualmente pacchetti HIS 2010 per l'esecuzione da parte dell'ID utente corrente o di PUBLIC usando lo Strumento di Accesso ai Dati, la Creazione Guidata Origine Dati, i Collegamenti Dati o la Libreria di Accesso ai Dati. Connettersi a DB2 usando un ID di autorizzazione con privilegi per creare automaticamente pacchetti HIS 2010 (privilegi CREATE, BIND e EXECUTE). Per altre informazioni, vedere Raccolta pacchetti. |
| 42501 42602 |
-567 -567 |
<BIND-type> AUTHORIZATION ERROR USING <auth-id> AUTHORITY PACKAGE = package-name< PRIVILEGE = ><privilege>. Il nome di autorizzazione &1 non è consentito. <authorization-ID> non è un ID di autorizzazione valido. |
Motivo: il server non può eseguire un'istruzione SQL SELECT quando l'account utente non dispone dell'autorizzazione per creare o eseguire i pacchetti DB2 necessari. Azione: verificare le informazioni di connessione per assicurarsi che il valore raccolta pacchetti corrisponda alla raccolta DB2 in cui i pacchetti HIS 2010 sono definiti per l'esecuzione in base all'identificatore utente corrente o PUBLIC. Creare manualmente pacchetti HIS 2010 per l'esecuzione da parte dell'ID utente corrente o di PUBLIC usando lo Strumento di Accesso ai Dati, la Creazione Guidata Origine Dati, i Collegamenti Dati o la Libreria di Accesso ai Dati. Connettersi a DB2 usando un ID di autorizzazione con privilegi per creare automaticamente pacchetti HIS 2010 (privilegi CREATE, BIND e EXECUTE). Per altre informazioni, vedere Raccolta pacchetti. |
| 42710 | -601 | IL NOME (NUMERO DI SERIE DI VERSIONE O VOLUME) DELL'OGGETTO DA DEFINIRE OPPURE LA DESTINAZIONE DI UN'ISTRUZIONE DI RINOMINAZIONE È IDENTICA AL NOME ESISTENTE DELL'OGGETTO (NUMERO DI SERIE VERSIONE O VOLUME) <object-name> DEL TIPO DI OGGETTO <object-type>. <nome> nel <schema> di tipo <tipo> già esistente. Il nome dell'oggetto da creare è identico al nome <esistente> di tipo <type>. |
Motivo: il server non può assegnare un nome a un oggetto quando tale nome è già in uso per un altro oggetto dello stesso tipo. Azione: assegnare un nome univoco all'oggetto rispetto agli oggetti di database esistenti. |
| 42721 | -725 | IL REGISTRO SPECIALE <registro> ALLA POSIZIONE <posizione> È STATO FORNITO UN VALORE NON VALIDO | Motivo: il server non può elaborare l'istruzione SET CURRENT SQLID quando contiene un valore non valido per l'identificatore utente o il nome della raccolta. Azione: verificare le informazioni di connessione per verificare che il valore Qualificatore predefinito corrisponda all'insieme DB2 in cui è catalogato l'oggetto. Per ulteriori informazioni, consulta Qualificatore predefinito. |
| 23505 | -803 | UN VALORE INSERITO O AGGIORNATO NON È VALIDO PERCHÉ L'INDICE IN INDEX SPACE <INDEXSPACE NAME> VINCOLA LE COLONNE DELLA TABELLA IN MODO CHE NESSUNA DUE RIGHE POSSA CONTENERE VALORI DUPLICATI IN TALI COLONNE. IDENTIFICATORE DI RIGA ESISTENTE È X <identificatore di riga> Valore della chiave duplicato specificato. Uno o più valori nell'istruzione INSERT, nell'istruzione UPDATE o nell'aggiornamento della chiave esterna causato da un'istruzione DELETE non sono validi perché la chiave primaria, il vincolo univoco o l'indice univoco identificato da <index-id> vincola il nome< della tabella di tabella >dalla presenza di valori duplicati per la chiave di indice. |
Motivo: il server non può eseguire un'istruzione INSERT o UPDATE su una tabella vincolata da un UNIQUE INDEX in cui l'istruzione genera valori duplicati. Azione: verificare che i valori dei dati non violano un vincolo eseguendo una query sul catalogo di sistema, ad esempio SYSIBM. SYSINDEXES) o esecuzione di una query dello schema client (ad esempio, OLE DB IDBSchemaRowsets::GetSchemas(DBSCHEMA_INDEXES) o ADO.NET MsDb2Connection.GetSchema(Indexes). |
| 51002 | -805 | DBRM O NOME PACKAGE <location-name>.<collection-id>.<dbrmname>.<consistency-token> NON TROVATO NEL PIANO <plan-name>.
<MOTIVO.> Pacchetto SQL <nome-pacchetto> nella <raccolta-nome> non trovato nel server DRDA. Impossibile <trovare il nome> del pacchetto. |
Motivo: il server non è riuscito a trovare il pacchetto SQL statico DB2 richiesto dal client DB2 per eseguire un'istruzione SQL SELECT dinamica. Azione: verificare le informazioni di connessione per assicurarsi che il valore raccolta pacchetti corrisponda alla raccolta DB2 in cui i pacchetti HIS 2010 sono definiti per l'esecuzione in base all'ID utente corrente o PUBLIC. Per altre informazioni, vedere Raccolta pacchetti. |
| 58004 | -901 | ESECUZIONE NON RIUSCITA CAUSATA DA UN ERRORE DI SISTEMA CHE NON IMPEDISCE L'ESECUZIONE RIUSCITA DEI SINGOLI COMANDI SQL SUCCESSIVI. Errore di sistema SQL. L'istruzione SQL non è riuscita a causa di un errore di sistema non grave. È possibile elaborare le istruzioni SQL successive. (Motivo<motivo>.) |
Motivo: il server non è riuscito a eseguire l'istruzione SQL corrente, ma le istruzioni SQL successive potrebbero avere esito positivo. Questo errore può essere causato da un errore di commit della transazione all'interno di un'unità di lavoro distribuita oppure un aggiornamento non riesce a causa di un vincolo oppure l'istruzione SQL contiene una lunghezza non valida (0 o superiore alla lunghezza massima). Azione: l'utente deve controllare il codice motivo dove disponibile per determinare se è necessaria un'ulteriore azione dell'utente o dell'amministratore, nonché per determinare come evitare l'errore modificando l'applicazione, la transazione o il comando. |
| 57011 | -904 | ESECUZIONE NON RIUSCITA CAUSATA DA UNA RISORSA NON DISPONIBILE. REASON <reason-code>, TIPO DI RISORSA <resource-type> e NOME DELLA RISORSA <resource-name>. Limite di risorse superato. Esecuzione non riuscita causata da una risorsa non disponibile. Codice motivo: <reason-code>, tipo di risorsa: <tipo di risorsa> e nome risorsa: <nome-risorsa>. |
Motivo: il server non può eseguire l'istruzione SQL perché l'oggetto dell'istruzione non è disponibile. Azione: verificare che l'oggetto e il database siano disponibili e non in uno stato deadlock, offline o non disponibile. |
| 57033 | -913 | ESECUZIONE NON RIUSCITA CAUSATA DA DEADLOCK O TIMEOUT. CODICE MOTIVO <codice-motivo>, TIPO DI RISORSA <tipo-di-risorsa> E NOME RISORSA <nome-risorsa>. Riga o oggetto <nome-oggetto> in <risorsa nome-risorsa> tipo <tipo-risorsa> in uso. Esecuzione non riuscita causata da deadlock o timeout. Codice motivo <motivo>. |
Motivo: il server non può eseguire l'istruzione SQL perché l'oggetto dell'istruzione non è disponibile. Azione: verificare che l'oggetto e il database siano disponibili e non in uno stato deadlock, offline o non disponibile. Eseguire il commit o il rollback dell'operazione precedente e quindi disconnettersi dal database. Controllare il codice motivo del server per ulteriori informazioni sullo stato dell'oggetto , ad esempio DB2 per il codice motivo z/OS 00C90088 indica un deadlock, mentre 00C9008E indica un timeout. |