1.0 Introduzione
2.0 Software supportato e specifiche
3.0 Limitazioni
3.1 Per generare un bean Java o un metodo EJB da una procedura memorizzata è necessario essere in linea
4.0 Problemi noti
4.1 Modelli di database
4.2 Query SQL
4.3 Connessioni al database
4.4 DDL SQL
4.5 Report degli errori
4.6 L'esecuzione di
istruzioni sql crea tabelle non corrette in Oracle
4.7 Esportazione dati
4.8
Ridenominazione delle cartelle nel progetto di database
4.9 Commenti SQL
4.10 Integrazione ed estrazione delle istruzioni SQL prima dell'apertura in SQL Builder
4.11 Non aggiungere immediatamente le nuove istruzioni SQL al controllo della versione
4.12 Modifica delle procedure memorizzate Java
4.13 Dati DBCS troncati quando è stata effettuata la connessione a DB2/390 (CP930)
4.14 Perdita di modifiche
durante la chiusura dell'editor di un documento di sola lettura
4.15 Apici mancanti negli identificatori di oggetti schema per impostazioni internazionali diverse dall'inglese
4.16 Connessione a un server DB2
4.17
La cancellazione delle procedure memorizzate Java da DB2 Versione 8 non è supportata durante l'utilizzo di un client
DB2 Versione 7
4.18 Modifica
manuale dei tipi di dati SQL restituiti per le UDF della tabella DB2.
4.19 Problemi con Sequelink 5.1 fornito con WebSphere Studio
4.20 Driver di DataDirect Sequelink 5.3
4.21 I file SQL di esempio di WebSphere Application Server - Express
che contengono errori possono essere eseguiti correttamente
4.22 Problemi durante il richiamo
delle tabelle da Microsoft SQL Server
4.23 Problemi di connessione a Cloudscape 5.1
4.24 Messaggio di errore durante lo spostamento/ridenominazione/eliminazione
di un file jar JDBC
4.25 Nodi schema
duplicati durante l'importazione, l'eliminazione o la reimportazione dei file EJB JAR
Gli strumenti del database relazionale in WebSphere Studio consentono di effettuare la connessione ai database, analizzare o importare progettazioni del database, progettare nuovi database utilizzando procedure guidate, creare ed eseguire query SQL utilizzando SQL Builder, creare ed eseguire procedure memorizzate DB2 come UDF DB2. L'accesso agli strumenti del database relazionale avviene attraverso le viste Prospettiva dati - Definizione dati e Server DB.
Gli strumenti RDB supportano la connessione a e l'importazione dai seguenti tipi di database:
- SQL 92, 99
- Cloudscape 5.0.4
- DB2 UDB 6.1, 7.1, 7.2, 8.1
- DB2 UDB per iSeries 4.5, 5.1
- DB2 UDB per OS/390 6, 7
- DB2 UDB Express Edition 8.1
- Oracle 8i 8.1.7
- Oracle 9i 9.0.1
- SQL Server Enterprise 7.0 SP2
- SQL Server Enterprise 2000
- Sybase Adaptive Server Enterprise 11.9.2, 12, 12.5
- Informix Dynamic Server.2000 9.2
- Informix Dynamic Server 7.3, 9.3, 9.3.1
- MySQL 3.23
- InstantDB 3.26
Il supporto SQL nella procedura guidata SQL e nel Generatore di query SQL dipende dal livello di supporto offerto dal corrispondente fornitore di database.
Supporto Fullselect:
Supporto per join:
- valido solo per DB2, Oracle, Cloudscape e Sybase.
- Nel caso di DB2, sono supportati gli operatori Union, Union All, Except, Except All, Intersect e Intersect All, nonché le proposizioni di valori.
- Nel caso di Oracle, sono supportati gli operatori Union, Union All, MINUS e Intersect.
- Nel caso di Sybase, sono supportati gli operatori Union e Union All.
- Nel caso di Cloudscape, sono supportati gli operatori Union, Union All, nonché le preposizioni di valori.
Supporto per raggruppamento dei risultati delle query:
- DB2: inner join, outer join sinistro, outer join destro, full outer join.
- Oracle: inner join, outer join sinistro e outer join destro. La sintassi per l'outer join sinistro e l'outer join destro è conforme alla sintassi "+" Oracle nella proposizione where.
- Sybase, Cloudscape e MySQL: inner join, outer join sinistro e outer join destro.
Supporto per Cast di espressioni:
- DB2: Group By, Rollup, Cube e Grouping Sets.
- Oracle: Group By, Rollup e Cube.
- Sybase: Group By.
- Cloudscape: Group By
- DB2 - CAST espressione AS espressione
- MS SQL Server - CAST espressione AS data_type
- Oracle: non è supportata la funzione TRANSLATE
Per utilizzare le procedure guidate che consentono di generare un bean Java o un metodo EJB da una procedura memorizzata, è necessario lavorare essendo in linea.
- Attualmente non è disponibile alcun supporto per la creazione di modelli di indici, vincoli di controllo e vincoli univoci, trigger, tipi strutturati o colonne di identità.
- Tuttavia, gli strumenti dei database relazionali non supportano le opzioni di controllo nelle viste.
- Le parentesi non necessarie nelle istruzioni della query provocano errori del parser.
- L'utilizzo delle parentesi nelle clausole WHERE non è correntemente supportato.
- I file SQL di grandi dimensioni possono rallentare l'editor.
- Per Oracle, le istruzioni Update devono assegnare singolarmente dei valori alle colonne senza l'utilizzo dei gruppi racchiusi tra parentesi. Quando si aggiungono le colonne singolarmente e un valore mediante una query secondaria, utilizzare l'opzione "Crea espressione" nella casella della tabella Valore per creare un'espressione query per la colonna.
- Le modifiche agli oggetti database utilizzati da un'istruzione potrebbero causare errori relativi a SQL Builder in quanto non è più possibile analizzare regolarmente l'istruzioni sul modello dei dati locale.
- La modifica di una vista e l'apertura di un'istruzione contenente la vista potrebbe determinare la chiusura non prevista del workbench.
- Se viene esclusa una connessione database da WebSphere Studio, per l'esecuzione dell'istruzione non sarà richiesta tale connessione. È necessario reimportare il database nel progetto dalla vista Server DB per ripristinare la connessione.
- Impossibile creare una query utilizzando una vista derivata da un UDF.
- La funzione di trascinamento e rilascio degli oggetti del database è supportata solo se avviene dalla vista Definizione dati e non dalla vista Server DB.
- Se si importa una tabella DB2 UDB o DB2 per iSeries con una colonna di tipo DATALINK, non verranno importate le opzioni di controllo del collegamento della colonna. La lunghezza DATALINK verrà impostata su 200, mentre le opzioni di collegamento verranno impostate su NO LINK CONTROL. È possibile aggiornare queste proprietà nell'editor tabelle dopo aver impostato la tabella nella vista Dati.
- La rimozione di più connessioni dalla vista Server DB non sempre funziona regolarmente. In caso di problemi, è possibile conservare le connessioni oppure rimuoverle una alla volta.
- È possibile che i tipi di dati stringa di caratteri non siano importati regolarmente per le connessioni ai server iSeries. I tipi di dati CHAR FOR BIT DATA, VARCHAR FOR BIT DATA e LONG VARCHAR FOR BIT DATA possono essere importati senza le opzioni FOR BIT DATA. In tal caso, utilizzare l'editor Tabella nella prospettiva Dati per modificare le colonne interessate.
- I nomi degli oggetti schema contenenti caratteri DBCS non possono essere importati correttamente da iSeries. È possibile che negli identificativi delimitati manchino gli apici. In questo caso, utilizzare l'editor della tabella per modificare i nomi delle restrizioni e delle colonne.
- Gli ID per i vincoli di chiave primaria non vengono importati per le connessioni OS/390.
- I valori predefiniti delle colonne che rappresentano procedure memorizzate, funzioni o che sono stati definiti con una proposizione di identità, non sono importati correttamente e possono causare l'inserimento di caratteri non ASCII nel documento di una tabella. Tali caratteri impediscono il normale il caricamento del documento. Se ciò dovesse verificarsi, è necessario modificare manualmente il documento tblxmi che genera il problema e rimuovere il tag e il valore predefiniti.
- Nelle connessioni al database del server SQL mediante il driver WebSphere Connect JDBC, generalmente sono necessari 3 file jar per specificare il percorso della classe. Si consiglia di unire tali file in unico file jar; in caso contrario la procedura guidata che si apre dopo l'avvenuta connessione avrà dimensioni eccessive, a causa della lunghezza del campo Percorso driver.
- Durante la creazione di una nuova connessione al database da un client DB2 Versione 8, se si desidera utilizzare il driver IBM DB2 NET DRIVER JDBC, è necessario aggiungere questi due file JAR al campo Percorso classe: <DB2HOME>/java/db2jcc.jar e <DB2HOME>/java/common.jar (dove <DB2HOME> è la directory in cui è stato installato DB2). Se tale impostazione non viene eseguita, si verificherà un errore. Nota: se si utilizza la procedura guidata Nuova connessione al database senza aggiungere i file JAR indicati al percorso classi, la procedura memorizzata non verrà caricata. In questo caso sarà necessario riavviare la procedura guidata Connessione e immettere i file nel campo Percorso classe.
- Lo schema e i metadati della tabella potrebbero non essere importati se si utilizza un client DB2 UDB Versione 8 per connettersi a una versione 7 o a una versione precedente di DB2 su z/OS. Per risolvere il problema, installare DB2 per z/OS PTF UQ72081.
- Possono verificarsi problemi relativi all'importazione o alla modifica dei tipi di dati long Oracle.
- I file DDL SQL di dimensioni particolarmente grandi possono rallentare le prestazioni dell'editor.
- I file DDL SQL di dimensioni particolarmente grandi possono generare eccezioni per memoria insufficiente durante l'analisi o l'esecuzione.
- La modifica degli script Oracle può provocare errori nella vista Struttura dell'editor. Ad esempio, le istruzioni "CREATE SEQUENCE", "CREATE OR REPLACE TRIGGER" e "END" verranno visualizzate in modo errato. Tuttavia, è ancora possibile procedere all'esportazione di questi elementi in un server Oracle.
Quando si verifica un errore durante l'analisi di un file SQL, la causa va ricercata nel token successivo a quello segnalato dal messaggio di errore. Il messaggio di errore viene visualizzato anche nell'elenco delle attività.
Quando un file sql viene eseguito su un server di database Oracle, è necessario effettuare inizialmente una selezione per creare le sequenze di database e trigger. Questo succede perché WebSphere interagisce in modo non corretto con Oracle inserendo spazi in più. Dopo aver creato le tabelle, passare alla macchina del server Oracle e modificare l'istruzione in modo da eliminare gli spazi inseriti e aggiungere il comando 'end;'. Quindi ritornare a WebSphere ed eseguire nuovamente l'istruzione sul server, selezionando questa volta le istruzioni di modifica e inserimento.
- È possibile trascinare elementi esistenti nel database o catalogo di backend eseguendo Esegui su server sugli script DDL SQL. Se si desidera rilasciare gli oggetti esistenti su oggetti di dati (ad esempio, database, schemi, tabelle), selezionare Genera DDL dal menu a comparsa, specificando il rilascio delle istruzioni esistenti. Nello script DDL di SQL, selezionare Esegui su server dal menu a comparsa. Se gli oggetti non esistono correntemente sul catalogo o database di backend, sarà sufficiente selezionare Esporta su server sugli oggetti di dati.
- L'esportazione di alcune istruzioni in un server Oracle può determinare la presenza di spazi negli identificativi del server. Si prenda ad esempio l'istruzione: CREATE OR REPLACE TRIGGER SET_TRANSACTIONS_TRANID BEFORE INSERT ON TRANSACTIONS FOR EACH ROW WHEN (NEW.TRANID IS NULL) BEGIN SELECT TRANSACTIONS_TRANID_SQ.NEXTVAL INTO :NEW.TRANID FROM DUAL; END;
Dopo l'esecuzione di questo script verso il server, gli ID specificati nella proposizione SELECT, potrebbero essere visualizzati in modo diverso: così "TRANSACTION_TRANID_SQ.NEXTVAL" potrebbe essere visualizzata "TRANSACTIONS_TRANID_SQ . NEXTVAL"
La modifica del nome di una cartella all'interno di un progetto contenente un database eliminerà i riferimenti URI nei file correlati al database del progetto e provocherà degli errori. Se è necessario ridenominare una cartella, tutti i riferimenti presenti nei file correlati al database devono essere modificati. Ad esempio, in un file di tabella (con estensione .tblxmi) è presente il seguente riferimento e il database si trova nella cartella folder1 del progetto:
<database href="folder1/Con1_VIDEOS.dbxmi#RDBDatabase_1"/>
Se il nome della cartella viene modificato in folder2, è necessario modificare questa riga in base alla modifica apportata:
<database href="folder2/Con1_VIDEOS.dbxmi#RDBDatabase_1"/>
I commenti SQL (righe precedute da un doppio trattino: --) non sono supportati in SQL Builder.
Se si modifica un'istruzione SQL (.sqx files) sottoposta al controllo versione, accertarsi che l'istruzione non sia aperta in SQL Builder quando si esegue l'integrazione o l'estrazione. Estrarre il file (nella vista Selezione) e modificare l'istruzione. Una volta modificata l'istruzione, salvare le modifiche, chiudere SQL Builder ed integrare file.
Quando si crea una nuova istruzione SQL, quando viene richiesto, non aggiungerla al controllo versione. Apportare le modifiche necessarie al file utilizzando SQL Builder, chiudere il file e aggiungerlo al controllo della versione.
- Se il progetto è di tipo Java, l'editor visualizzerà un'icona a forma di lampadina nella barra degli indicatori sulla prima riga di una procedura memorizzata Java. È possibile ignorare questo indicatore. L'indicatore non causa alcun problema quando si crea la procedura memorizzata java.
- L'editor consente di aggiungere punti di interruzione al codice di origine di una procedura memorizzata Java. Tuttavia, questi punti di interruzione vengono ignorati in quanto il debug delle procedure memorizzate Java non è ancora supportato.
A causa di una limitazione JDBC, quando si effettua una connessione a DB2/390 (CP930), alcuni dati DBCS vengono troncati in base alla lunghezza dati della codifica UTF-8. I caratteri Katakana SBCS 10 possono essere ricevuti come caratteri Katakana 3 da un'istruzione "SELECT". I dati effettivamente memorizzati in una tabella in OS/390 sono i caratteri esadecimali '8182838485868788898A' che corrispondono ai caratteri giapponesi Katakana 10 (1 byte per 1 carattere). Quando si utilizza il driver JDBC con l'impostazione predefinita, i dati query ricevuti visualizzano solo 3 caratteri ('efbdb1efbdb2efbdb3') come stringa da 9 byte valida in UTF-8, che è parte di'efbdb1efbdb2efbdb3efbdb4efbdb5efbdb6efbdb7efbdb8efbdb9efbdba' nel driver JDBC.
Se un documento viene contrassegnato come sola lettura mentre l'editor è aperto su questo documento, tutte le modifiche apportate andranno perse alla chiusura dell'editor. Verificare che l'estrazione dei documenti venga eseguita prima di utilizzare l'editor.
Il caricatore di catalogo JDBC non può stabilire se un ID di un oggetto schema debba essere limitato per le impostazioni internazionali diverse dall'inglese. Per gli ID da limitare, dopo l'importazione aprire l'editor dello schema/tabella per ridenominare lo schema. Per stabilire se un ID deve essere limitato, consultare la documentazione relativa al server di database.
- Durante la connessione a DB2 Universal Database per iSeries, è necessario selezionare Driver AS/400 Toolbox per JDBC Java nel campo a discesa Driver JDBC della procedura guidata Nuova connessione al database. Per ulteriori informazioni, fare riferimento all'argomento della guida relativo alla creazione di connessioni JDBC utilizzando un driver DB2 Universal Database per iSeries.
- Il driver di DB2 Universal per Linux, Unix e Windows non supporta le procedure memorizzate Java e SQLJ.
- La connessione da un client DB2 v8 a un server DB2 v7 su Linux, Unix e Windows non è supportata.
Se si utilizzano server DB2 diversi, fare riferimento alla guida in linea per determinare i driver JDBC da selezionare per creare la connessione al server.
Se si utilizza DB2 Universal Database Versione 7 nella propria stazione di lavoro client e ci si connette a DB2 Universal Database Versione 8 sul server, non sarà possibile cancellare le procedure memorizzate Java dal server DB2 Versione 8.
Quando si utilizza la procedura guidata relativa alla nuova funzione SQL definita dall'utente, per creare UDF di tabella DB2, la procedura guidata consiglia i tipi di dati SQL relativi ai dati restituiti per ciascuna colonna.
Se la procedura guidata non è in grado di associare un tipo di dati corrispondente per una colonna o se si desidera utilizzare un tipo di dati restituiti differente per una colonna, aprire la UDF generata nell'editor e modificare manualmente il tipo di dati.
WebSphere Studio include una versione con il marchio WebSphere del client JDBC di Sequelink 5.1 in WS_installdir/runtimes/aes_v4/lib/sljc.jar. Gli strumenti del database relazionale di WebSphere Studio non sono abilitati a utilizzare questa versione del client per una connessione JDBC. Si potrebbe ricevere il messaggio di errore:
IWAS0126E Problemi rilevati durante il tentativo di stabilire una connessione a nome_connessione Motivo: La connessione non è stata stabilita perché il file JAR selezionato non è un client DataDirect WebSphere. Assicurarsi che il file JAR selezionato provenga da un'installazione di WebSphere.
quando il JAR viene specificato nel campo Percorso classe JDBC nella procedura guidata Connessione. Presso il supporto IBM è disponibile una versione del client che gli strumenti del database relazionale sono abilitati a utilizzare.
WebSphere Studio Versione 5.x include una nuova versione del client JDBC di DataDirect Sequelink. Il client DataDirect Sequelink 5.3 JDBC si trova nell'archivio Dir_installazione_WS/runtimes/base_v5/lib/sljc.jar. Per informazione sulla connessione ad un database mediante il driver Sequelink 5.1 JDBC, fare riferimento alla documentazione del database relazionale.
I file SQL delle cartelle del progetto database dell'esempio di WebSphere Application Server - Express potrebbe contenere errori di analisi nella vista Struttura della prospettiva Dati. Tuttavia, i file SQL vengono eseguiti correttamente se si utilizza l'azione "Esegui su server di database" come descritto nel file README.html degli esempi.
- Se si utilizza DataDirect SequeLink 5.1, 5.3 o i driver WebSphere Connect JDBC, non sarà possibile richiamare le tabelle da Microsoft SQL Server Versione 7 se non si è proprietari. Ad esempio, se si posseggono la Tabella1 e la Tabella2 del DatabaseA, e si specifica nella procedura guidata Connessione di stabilire una connessione al DatabaseB, varranno mostrate solo la Tabella1 e la Tabella2 anche se non appartengono al DatabaseB, ma verranno richiamate in quanto l'ID utente utilizzato per connettersi è il proprietario delle tabelle.
- È necessario essere proprietari delle tabelle anche se si utilizzano i driver DataDirect SequeLink 5.1 o 5.3 JDBC per richiamare tabelle da Microsoft SQL Server 2000.
Se vengono eseguite più azioni di connessione e disconnessione utilizzando Cloudscape 5.1, potrebbero presentarsi tabelle senza colonne nel riquadro Server DB. Se dovesse verificarsi questo problema, riavviare WebSphere Studio.
I file jar JDBC, ovvero i file jar specificati nel campo del percorso classi della procedura guidata Connessione, vengono bloccati dopo la prima connessione e non possono essere utilizzati nella sessione JVM corrente. Se si tenta di ridenominare/spostare/eliminare tali file, verrà visualizzato il seguente messaggio di errore: 'Impossibile accedere al file. Il file è utilizzato da un altro processo'. Il file verrà sbloccato alla chiusura del workbench.
L'importazione, l'eliminazione e la reimportazione di un file JAR EJB (esempi o diversi) quando la prospettiva Dati o la prospettiva J2EE o entrambe sono aperte, fanno sì che occasionalmente, possano apparire nodi schema duplicati nel database di backend del il file JAR EJB. Tali voci non arrecano alcun danno, tuttavia è preferibile chiudere e riavviare la prospettiva in modo da rimuovere i duplicati.
Visualizza il file Readme principale
(C) Copyright IBM Corporation 2000, 2003. Tutti i diritti riservati.