2010-01-22 6 views
1

Comment puis-je obtenir par programme le nom de la base de données Oracle à laquelle je me connecte? J'ai essayé:Obtenir le nom de la base de données Oracle

using (OracleConnection connection = new OracleConnection(oraConnectStr)) 
      { 
       connection.Open(); 
       return connection.Database; 
      } 

mais il renvoie la chaîne vide. Je ne peux pas utiliser toute la chaîne de connexion car elle peut contenir un nom d'utilisateur/mot de passe.

+0

Avez-vous pas essayé regexing la chaîne de connexion? Vous pouvez également créer un analyseur approprié pour la chaîne de connexion (qui ressemble beaucoup à du XML aplati) et lire la chaîne de cette façon. Je ne suis pas familier avec C#, mais ce serait une manière multi-plateforme/cross-technologie pour y parvenir. –

Répondre

1

vous pouvez interroger v$database:

SQL> SELECT NAME FROM v$database; 

NAME 
--------- 
PROD 
+0

Et en supposant qu'il ne peut pas se connecter à la base de données ?! Ce problème est résolu sans connexion réseau, non? –

Questions connexes