Outils de bases de données relationnelles - Notes sur l'édition

1.0 Introduction
2.0 Spécifications et logiciels pris en charge
3.0 Limitations
   3.1 Doit être en ligne pour générer la méthode Java Bean ou EJB à partir d'une procédure stockée
4.0 Problèmes connus
   4.1 Modèles de base de données
   4.2 Requêtes SQL
   4.3 Connexions aux bases de données
   4.4 DDL SQL
   4.5 Génération de rapports d'erreurs
   4.6 L'exécution d'instructions SQL crée des tables incorrectes dans Oracle
   4.7 Exportation de données
   4.8 Changement de nom des dossiers dans le projet de base de données
   4.9 Commentaires SQL
   4.10 Restituez et réservez les instructions SQL avant de les ouvrir dans le Générateur SQL
   4.11 N'ajoutez pas immédiatement de nouvelles instructions SQL au contrôle de version
   4.12 Edition des procédures stockées Java
   4.13 Les données DBCS sont tronquées lors de la connexion à DB2/390 (CP930)
   4.14 Perte des modifications lors de la fermeture de l'éditeur pour les documents en lecture seule
   4.15 Guillemets manquants dans les identificateurs d'objet de schéma pour les environnements locaux autres qu'en anglais
   4.16 Connexion à un serveur DB2
   4.17 La suppression des procédures stockées Java depuis DB2 version 8 n'est pas prise en charge lors de l'utilisation du client DB2 version 7
   4.18 Modification manuelle des types de données SQL renvoyés pour les fonctions UDF de table DB2
   4.19 Problèmes avec Sequelink 5.1 fourni avec WebSphere Studio
   4.20 Pilote DataDirect Sequelink 5.3
   4.21 Les exemples de fichiers SQL de WebSphere Application Server - Express peuvent contenir des erreurs mais peuvent quand-même être exécutés
   4.22 Problèmes d'extraction de tables à partir de Microsoft SQL Server
   4.23 Problèmes de connexion à Cloudscape 5.1
   4.24 Message d'erreur lors du déplacement, du changement de nom ou de la suppression du fichier JAR JDBC
   4.25 Des noeuds de schéma en double apparaissent lors de l'importation, la suppression ou la réimportation de fichiers JAR EJB
   4.26 Message d'erreur d'environnement local endommagé au cours de l'exportation de données relationnelles

1.0 Introduction

Les outils de base de données relationnelle de WebSphere Studio permettent de se connecter à des bases de données, d'afficher ou d'importer des modèles de base de données, de créer des bases de données à l'aide d'assistants, d'exporter de nouveaux modèles dans une base de données, de créer et d'exécuter des requêtes SQL à l'aide de SQL Builder et de créer et d'exécuter des procédures mémorisées DB2, ainsi que des fonctions DB2 définies par l'utilisateur. Les outils de bases de données relationnelles sont accessibles à partir de la perspective Données et des vues Définition de données et Serveurs de base de données.

2.0 Spécifications et logiciels pris en charge

Les outils de bases de données relationnelles prennent en charge la connexion et l'importation des types de base de données suivants :

La prise en charge de SQL dans l'assistant SQL et le générateur de requête SQL dépend du niveau de prise en charge offert par le fournisseur de la base de données.

Prise en charge de la sélection complète :

Prise en charge des jointures : Prise en charge des résultats des requêtes de regroupement : Prise en charge de l'expression cast :

Sous Linux, une panne peut se produire lors de la connexion à DB2 Universal Database pour iSeries V5R1 à l'aide d'AS/400 Toolbox for Java JDBC Driver. Cet incident se produit lorsque vous entrez un mot de passe incorrect ou que vous ne renseignez pas la zone du mot de passe. Dans ce cas, redémarrez le produit et connectez-vous de nouveau en utilisant le mot de passe approprié.

3.0 Limitations

3.1 Etre en ligne pour générer une méthode Java Bean ou EJB à partir d'une procédure stockée

Pour utiliser les assistants qui vous permettent de générer un bean Java ou de générer une méthode EJB à partir d'une procédure stockée, vous devez travailler en ligne.

4.0 Problèmes connus

4.1 Modèles de base de données

  1. La modélisation des index, contraintes uniques et de contrôle, déclencheurs, types structurés ou colonnes d'identité n'est pas prise en charge actuellement.
  2. Les outils de base de données relationnelle ne prennent pas en charge les options de vérification sur les vues.

4.2 Requêtes SQL

  1. Des crochets insérés inutilement dans les instructions de requête génèrent des erreurs dans l'analyseur (ou l'interpréteur).
  2. L'utilisation de parenthèses dans les clauses conditionnelles WHERE des requêtes n'est actuellement pas prise en charge.
  3. Les fichiers SQL de grande taille sont susceptibles de réduire les performances de l'éditeur.
  4. Pour Oracle, les instructions de mise à jour doivent affecter des valeurs aux colonnes individuellement, sans indiquer de groupes entre parenthèses. Ajoutez des colonnes individuellement et, pour ajouter une valeur avec une sous-requête, utilisez l'option "Créer une expression" dans la zone de liste des cellules de table Valeur pour créer une expression de requête pour la colonne.
  5. Les modifications apportées aux objets de base de données utilisés par une instruction peuvent entraîner l'échec de SQL Builder car ce dernier ne peut plus analyser correctement la syntaxe de l'instruction par rapport au modèle de données local.
  6. L'édition d'une vue, puis l'ouverture d'une instruction contenant cette même vue, peut provoquer un arrêt inattendu du plan de travail.
  7. Si une connexion à une base de données est imposée en dehors de WebSphere Studio, elle n'apparaîtra pas dans l'exécution de l'instruction. Réimportez la base de données vers le projet à partir de la vue Serveurs de base de données pour restaurer la connexion.
  8. Une requête ne peut pas être créée à l'aide d'une vue dérivée d'une fonction définie par l'utilisateur.
  9. Le déplacement par glissement des objets de base de données est pris en charge dans la vue Définition de données, mais pas dans la vue Serveurs de base de données.

4.3 Connexions aux bases de données

  1. Si vous importez une table DB2 UDB ou DB2 for iSeries contenant une colonne de type DATALINK, les options de contrôle des liens correspondant à cette colonne ne sont pas importées. La valeur de longueur par défaut de la colonne DATALINK est 200 et les options de lien ont par défaut la valeur NO LINK CONTROL. Vous pouvez mettre à jour ces propriétés dans l'éditeur de table après avoir importé la table dans la vue des données.
  2. La suppression de plusieurs connexions dans la vue Serveurs BD ne fonctionne pas toujours. Si vous rencontrez un tel problème, vous pouvez conserver vos connexions ou les supprimer une à une.
  3. Les chaînes de caractères peuvent ne pas être importées correctement pour les connexions aux serveurs iSeries. Les types de données CHAR FOR BIT DATA, VARCHAR FOR BIT DATA et LONG VARCHAR FOR BIT DATA peuvent être importés sans les options FOR BIT DATA. Dans ces cas, utilisez l'éditeur de tables dans la perspective Données pour éditer les colonnes concernées.
  4. Les noms d'objets de schémas qui contiennent des caractères DBCS peuvent ne pas être importés correctement à partir d'iSeries. Les guillemets peuvent être manquantes dans les identificateurs délimités. Dans ces cas, utilisez l'éditeur de tables pour éditer les noms de colonne et de contrainte.
  5. Les identifiants des contraintes de clé principale ne sont pas importés pour les connexions OS/390.
  6. Les valeurs de colonne par défaut qui sont des procédures stockées, des fonctions, ou définies avec une clause d'identité ne sont pas importées correctement et peuvent résulter en des caractères non-ASCII dans un document tabulaire. Les caractères non-ASCII pausent problème lors du chargement du document. Lorsque cela se produit, il est nécessaire d'éditer manuellement le document tblxmi à l'origine de l'erreur et de supprimer la balise et la valeur par défaut.
  7. Lors de l'utilisation du pilote WebSphere Connect JDBC pour les connexions à une base de données SQL Server, trois fichiers jar sont nécessaires pour spécifier l'emplacement de classe. Il est recommandé de regrouper ces fichiers jar en un seul. Dans le cas contraire, lorsque l'assistant est rouvert après avoir établi une connexion, sa taille est anormalement grande. Ceci est dû à la longueur du champ Emplacement du pilote.
  8. Lors de la création d'une nouvelle connexion à une base de données à partir d'un client DB2 version 8, si vous souhaitez utiliser le IBM DB2 NET DRIVER JDBC Driver, vous devez ajouter les deux fichiers JAR suivants au champ Emplacement de classe : <DB2HOME>/java/db2jcc.jar et <DB2HOME>/java/common.jar (où <DB2HOME> est le répertoire où vous avez installé DB2). Si vous ne le faites pas, une erreur sera générée. Remarque : Si vous utilisez l'assistant de nouvelle connexion à une base de données sans ajouter ces fichiers JAR à votre emplacement de classe, les procédures stockées ne seront pas chargées. Vous devez relancer l'assistant de connexion pour entrer les fichiers dans le champ Emplacement de classe.
  9. Les métadonnées de schéma et de table peuvent ne pas être importées lors de l'utilisation d'un client DB2 UDB version 8 pour effectuer une connexion à une version 7 ou inférieure de DB2 sur z/OS. Pour résoudre ce problème, installez DB2 pour z/OS PTF UQ72081.

4.4 DDL SQL

  1. Des incidents risquent de se produire lors de l'importation ou de la modification de données Oracle de type long.
  2. Les fichiers DLL SQL de très grande taille sont susceptibles de réduire les performances de l'éditeur.
  3. Ils peuvent générer des exceptions de type mémoire saturée au cours de l'analyse ou de l'exécution.
  4. L'édition de scripts Oracle peut générer des erreurs dans la vue Structure de l'éditeur. Par exemple, les instructions "CREATE SEQUENCE", "CREATE OR REPLACE TRIGGER" et "END" apparaîtront erronées. Toutefois, vous pouvez toujours exporter ces éléments sur un serveur Oracle.

4.5 Génération de rapports d'erreurs

Une erreur risque de se produire lors de l'analyse d'un fichier SQL. Le symbole situé après le symbole désigné par le message d'erreur en est la cause. Le message d'erreur est également affiché dans la liste des tâches.

4.6 L'exécution d'instructions SQL crée des tables incorrectes dans Oracle

Lorsqu'un fichier SQL est exécuté sur le serveur de base de données Oracle, il est nécessaire de commencer par sélectionner pour créer les séquences et déclencheurs de tables. Cela est dû au fait que WebSphere interagit incorrectement avec Oracle en insérant des espaces supplémentaires. Une fois que les tables ont été créées, sur la machine serveur Oracle, éditez l'instruction de manière à retirer les espaces insérés et ajoutez la commande "end;". Revenez ensuite sur WebSphere et exécutez de nouveau l'instruction SQL sur le serveur, cette fois en sélectionnant les instructions Alter et les instructions insert.

4.7 Exportation de données

  1. Vous ne pouvez copier des artefacts existants dans le catalogue/la base de données d'arrière-plan qu'en exécutant l'option Exécuter sur le serveur sur les scripts DDL SQL. Pour copier les objets existants dans des objets de données (bases de données, schémas, tables), vous devez sélectionner l'option Générer un fichier DDL dans le menu en incrustation, en spécifiant la copie des instructions existantes. Dans le script DLL SQL généré, sélectionnez l'option Exécuter sur le serveur dans le menu en incrustation. Si les objets n'existent pas dans le catalogue/la base de données d'arrière-plan, il suffit de choisir Exporter vers le serveur sur les objets de données.
  2. L'exportation de certaines instructions sur un serveur Oracle peut être à l'origine d'espacements entre les identifiants sur le serveur. Considérons par exemple l'instruction suivante : 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;

    Après l'exécution de ce script sur le serveur, les identifiants spécifiés dans la clause SELECT peuvent apparaître différemment (par exemple, "TRANSACTION_TRANID_SQ.NEXTVAL" peut devenir "TRANSACTIONS_TRANID_SQ . NEXTVAL")

4.8 Changement de nom des dossiers dans le projet de base de données

La modification du nom d'un dossier dans un projet contenant une base de données rompt les références d'URI dans les fichiers du projet associés à cette base de données et provoque des erreurs. Si un dossier doit être renommé, toutes les références connexes dans les fichiers associés à la base de données doivent être modifiées. Supposons par exemple que la référence suivante existe dans un fichier de tables (extension .tblxmi) et que la base de données du projet se trouve dans le dossier folder1 :

<database href="folder1/Con1_VIDEOS.dbxmi#RDBDatabase_1"/>

Si le nom du dossier est renommé en folder2, la ligne suivante doit être modifiée pour prendre en compte le nouveau nom :

<database href="folder2/Con1_VIDEOS.dbxmi#RDBDatabase_1"/>

4.9 Commentaires SQL

Les commentaires SQL (lignes précédées d'un double trait d'union (--)) ne sont pas pris en charge dans SQL Builder.

4.10 Restituez et réservez les instructions SQL avant de les ouvrir dans le SQL Builder

Si vous éditez une instruction SQL (fichiers .sqx) sous contrôle des versions, vérifiez qu'elle n'est pas ouverte dans SQL Builder avant de la réserver ou de la libérer. Réservez le fichier (dans la vue Navigateur), puis éditez l'instruction. Après avoir édité l'instruction, sauvegardez vos modifications, fermez SQL Builder, puis libérez le fichier.

4.11 N'ajoutez pas immédiatement des instructions SQL nouvellement créées au contrôle de version

Si vous créez une nouvelle instruction SQL et êtes invité à l'ajouter au contrôle de version, ne le faites pas. Apportez les modifications nécessaires au fichier à l'aide de SQL Builder, fermez le fichier, puis ajoutez-le au contrôle des versions.

4.12 Edition des procédures stockées Java

4.13 Troncature des données DBCS lors de la connexion à DB2/390 (CP930)

En raison d'une limitation de JDBC, lorsque vous vous connectez à DB2/390 (CP930), certaines données sur 2 octets sont tronquées en fonction de la longueur des données du codage UTF-8. Dix caractères Katakana sur 1 octet peuvent être reçues comme 3 caractères Katakana par une instruction "SELECT". Les données stockées en réalité dans une table OS/390 sont '8182838485868788898A' en hexadécimal, soit 10 caractères japonais Katakana (1 octet par caractère). Toutefois, lorsque vous utilisez le pilote JDBC avec le paramètre par défaut, les données de la requête reçue n'affichent que 3 caractères ('efbdb1efbdb2efbdb3') pour la chaîne de 9 octets 'efbdb1efbdb2efbdb3efbdb4efbdb5efbdb6efbdb7efbdb8efbdb9efbdba' valide dans UTF-8, qui serait tronquée dans le pilote JDBC.

4.14 Perte des modifications lors de la fermeture de l'éditeur pour les documents en lecture seule

Si un document est réservé, c'est-à-dire marqué en lecture seule lorsqu'un éditeur l'ouvre, toutes les modifications en attente seront perdues à la fermeture de cet éditeur. Vérifiez si le document que vous ouvrez dans un éditeur est réservé.

4.15 Guillemets manquants dans les identificateurs d'objet de schéma pour les paramètres nationaux autres que ceux correspondant à l'anglais

Le chargeur de catalogues JDBC ne parvient pas à déterminer si un identificateur d'objet de schéma doit être délimité pour les paramètres nationaux correspondant à une autre langue qu'à l'anglais. Pour les identificateurs qui doivent être délimités, ouvrez l'éditeur de schéma/table après l'importation pour renommer l'objet de schéma. Pour déterminer le moment où un identificateur doit être délimité, reportez-vous à la documentation de votre serveur de base de données.

4.16 Connexion à un serveur DB2

Pour les autres serveurs DB2, reportez-vous à l'aide en ligne relative à la sélection de pilotes JDBC lors des connexions à la base de données.

4.17 La suppression des procédures stockées Java depuis DB2 version 8 n'est pas prise en charge lors de l'utilisation du client DB2 version 7

Si vous utilisez DB2 Universal Database version 7 sur votre poste de travail client et que vous vous connectez à DB2 Universal Database version 8 sur le serveur, vous ne pourrez pas retirer les procédures mémorisées Java du serveur DB2 version 8.

4.18 Modification manuelle des types de données SQL renvoyés pour les UDF de table DB2

Lorsque vous utilisez l'assistant Nouvelle fonction utilisateur SQL pour créer une fonction UDF de table DB2, ce dernier recommande les types de données SQL comme données à renvoyer pour chaque colonne.

Si l'assistant ne parvient pas à mapper un type de données correspondant pour une colonne ou si vous voulez utiliser un autre type de données à renvoyer pour une colonne, ouvrez la fonction UDF générée dans l'éditeur et modifiez le type de données manuellement.

4.19 Problèmes avec Sequelink 5.1 fourni avec WebSphere Studio

WebSphere Studio inclut une version personnalisée de WebSphere du client Sequelink 5.1 JDBC dans rép_install_WS/runtimes/aes_v4/lib/sljc.jar. Les outils de base de données relationnelle WebSphere Studio ne peuvent pas utiliser cette version du client pour la connexion JDBC. Le message d'erreur suivant peut être généré :

IWAS0126E Incidents survenus lors de la tentative d'établissement de la connexion nom_connexion Motif : La connexion n'a pas été établie car le fichier JAR sélectionné n'est pas un client DataDirect personnalisé. Vérifiez que le fichier jar sélectionné provient d'une installation WebSphere.

lorsque ce fichier JAR est spécifié dans le champ JDBC class location de l'assistant de connexion. Une version du client pouvant être utilisée par les outils de base de données relationnelle est disponible auprès du support technique IBM.

4.20 Pilote DataDirect Sequelink 5.3

WebSphere Studio version 5.x inclut une nouvelle version du client JDBC DataDirect Sequelink. Le client JDBC DataDirect Sequelink 5.3 se trouve dans l'archive rép_installa_WS/runtimes/base_v5/lib/sljc.jar. Reportez-vous à la documentation des outils de base de données relationnelle pour connaître le moyen de se connecter à la base de données à l'aide du pilote Sequelink 5.1 JDBC.

4.21 Les exemples de fichiers SQL WebSphere Application Server - Express peuvent contenir des erreurs mais peuvent quand-même être exécutés

Les fichiers SQL de chaque dossier de projet de configuration/base de données WebSphere Application Server - Express peuvent contenir des erreurs d'analyse erronées affichées dans la vue Structure (Outline) de la perspective Données. Toutefois, les fichiers SQL s'exécutent correctement en utilisant l'action "Exécuter sur le serveur" décrite dans les exemples du fichier README.html.

4.22 Problèmes d'extraction de tables à partir de Microsoft SQL Server

4.23 Problèmes de connexion à Cloudscape 5.1

Des actions de connexion et de déconnexion répétées à l'aide de Cloudscape 5.1 peuvent conduire à des tables sans colonnes dans la sous-fenêtre Serveurs BD. Si ce problème survient, redémarrez WebSphere Studio.

4.24 Message d'erreur lors du déplacement, du changement de nom, de la suppression du fichier jar JDBC

Les fichiers jar JDBC, c'est-à-dire les fichiers jar spécifiés dans le champ d'emplacement de classe de l'assistant de connexion, sont verrouillés pour une utilisation dans la session JVM en cours après la première fois qu'une connexion est établie. Les tentatives de changement de nom, suppression, déplacement des fichiers jar généreront le message d'erreur suivant : 'The process cannot access the file because it is being used by another process.' Le fichier sera déverrouillé à la fermeture du plan de travail.

4.25 Des noeuds de schéma en double apparaissent lors de l'importation, la suppression ou la réimportation de fichiers JAR EJB

L'importation, la suppression et la réimportation de fichiers JAR EJB (exemples ou autres) avec soit la perspective Données, soit la perspective J2EE ouverte, ou les deux, entraîne parfois l'apparition de noeuds de schéma en double sous les bases de données backend pour ce fichier JAR EJB. Les entrées sont sans risque mais il est recommandé de fermer et de redémarrer la perspective afin de supprimer les entrées en double.

4.26 Message d'erreur d'environnement local arabe endommagé au cours de l'exportation de données relationnelles

Lors de l'exportation de données relationnelles vers une base de données UTF-8 UDB DB2 V7 en utilisant l'environnement local arabe, vous pouvez obtenir des messages d'erreur d'environnement local endommagé en cas d'erreur. Il n'existe pas de solution à ce problème.

Retour au fichier Readme principal