Questions relatives à Oracle Server (FireDAC)

De RAD Studio
Aller à : navigation, rechercher

Remonter à FAQ (FireDAC)

Cette rubrique contient une liste des questions et réponses relatives à Oracle Server.

Q1 : Je souhaite installer mon application sur un PC qui exécute déjà un client Oracle et je ne veux pas utiliser les clés de registre. Je veux que le chemin d'accès et les variables TNS_Admin soient spécifiques à mon application

R : Il vous suffit de placer le fichier tnsnames.ora dans le même dossier qu'Oracle Instant Client. Aucune autre action n'est nécessaire, comme spécifier TNS_Admin ou TNS_Names. Si vous n'avez pas besoin d'utiliser les alias TNS, placez un fichier tnsnames.ora vide.

Q2 : Je reçois le message d'erreur "Impossible d'initialiser l'environnement OCI" dans l'application D2009. Quel est le problème ?

R : FireDAC ne peut pas initialiser OCI dans le mode Unicode requis pour D2009. Cela est très probablement dû à l'ancienne version du client Oracle. Nous vous suggérons de :

  • Mettre à jour le logiciel client Oracle vers la version 9.0 au minimum ;
  • Ou de conserver une version non Unicode de Delphi (<= D2007).

Q3 : Je dois me connecter à un serveur Oracle 8.0.5. Est-ce possible ?

R : La "feuille de route" suivante vous permet de choisir les versions correctes du client Oracle et de Delphi :

  • FireDAC avec Delphi 2009 ou version supérieure requiert au moins le client Oracle 8.1.5 car, à partir de cette version, le client fonctionne correctement avec Unicode.
  • FireDAC avec Delphi 2007 ou version inférieure requiert au minimum le client Oracle 8.0.3.

Q4 : Comment puis-je verrouiller une table avec Oracle ?

R : Le squelette générique de votre tâche peut ressembler à ceci :

 FDConnection1.StartTransaction;
 try
   FDConnection1.ExecSQL('LOCK TABLE ...');
   .........
   FDConnection1.Commit;
 except
   FDConnection1.Rollback;
   raise;
 end;

Q5 : Comment puis-je obtenir une liste des services Oracle, comme FireDAC fait dans la boîte de dialogue de connexion ?

R : Utilisez :

Q6 : L'extension Objets Oracle est-elle supportée ?

R : Pas pour le moment. Une solution consiste à construire des procédures et fonctions d'empaquetage PL/SQL. Cette approche vous permet ensuite d'utiliser Oracle Advanced Queuing.