IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Administration Oracle Discussion :

[PLSQL] Récupération du nom de la BD connectée


Sujet :

Administration Oracle

  1. #1
    Membre à l'essai
    Profil pro
    Étudiant
    Inscrit en
    Mars 2007
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2007
    Messages : 21
    Points : 11
    Points
    11
    Par défaut [PLSQL] Récupération du nom de la BD connectée
    Bonjour,
    Je vous explique mon problème :
    lors d'un enregistrement dans une table, un des champs de l'enregistrement dépend du nom de la base de données à laquelle le DBA est connecté pour effectué l'enregistrement.
    exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    chemin := 'c:\donnees\<nom_bd>\'
    La base de données pouvant changer, je ne peux mettre son nom en dur dans le code!
    De plus, je voudrais éviter au dba, moi, de saisir le nom la base de données à chaque fois que j'utilise le script.
    Or je ne sait pas comment faire pour que le script récupère le nom de la base de données sur laquelle il va s'executer.

    Pour me connecter à la BD, j'utilise SQL+ 9.2.0.7.0 avec une BD oracle v 9.2

    Merci d'avance de vos réponses!!

  2. #2
    Nouveau membre du Club
    Inscrit en
    Décembre 2006
    Messages
    37
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 37
    Points : 37
    Points
    37
    Par défaut
    si j'ai bien compris, tu peux recuperer le nom de la base comme ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    select name into xxxx from v$database;

  3. #3
    Membre à l'essai
    Profil pro
    Étudiant
    Inscrit en
    Mars 2007
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2007
    Messages : 21
    Points : 11
    Points
    11
    Par défaut
    Que dire..... Parfait, nickel...

    Merci pour cette réponse rapide!!

  4. #4
    Nouveau membre du Club
    Inscrit en
    Décembre 2006
    Messages
    37
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 37
    Points : 37
    Points
    37
    Par défaut
    je t'en prie !
    n'oublie pas de mettre résolu

  5. #5
    Membre à l'essai
    Profil pro
    Étudiant
    Inscrit en
    Mars 2007
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2007
    Messages : 21
    Points : 11
    Points
    11
    Par défaut
    petite question tout de même : le v$database est une vue sur les bases de données du serveur, c'est bien cela?

    Donc si j'ai plusieurs bases sur mon serveur,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT name INTO xxxx FROM v$database;
    va me retourner la liste des BD qui se trouvent sur mon serveur, non?

    Prenons le cas hypothétique mais réaliste où je ne connais pas à l'avance (à l'heure où j'écris mon script) le nom de la base.

    Y-a-t-il un moyen de récupérer le nom de la base sur laquelle je me suis logué en ouvrant SQL+? genre avec une session ou autre?

  6. #6
    Membre expert

    Profil pro
    Inscrit en
    Février 2006
    Messages
    3 437
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 3 437
    Points : 3 597
    Points
    3 597
    Par défaut
    Oracle n'est ni SQL Server ni MySQL ni Sybase !

    Ce que les autres SGBD appellent bases Oracle l'appelle schéma et tous les schémas d'une même instance appartiennent à la même base.

    Le nom du schéma de connection est forcément le nom de l'utilisateur spécifié dans la chaîne de connexion (sauf cas particulier si le schéma est modifié avec ALTER SESSION SET CURRENT_SCHEMA):

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <utilisateur>/<mot de passe>@base

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 4
    Dernier message: 02/02/2006, 11h24
  2. Récupération du nom d'un formulaire
    Par Crazyblinkgirl dans le forum ASP
    Réponses: 1
    Dernier message: 16/11/2005, 08h15
  3. [C#] [.NET] Récupération des noms de tables d'une base
    Par GuillaumeG dans le forum Windows Forms
    Réponses: 7
    Dernier message: 07/04/2005, 13h31
  4. [XSLT] Récupération du nom du fichier XML analysé
    Par Patkaza dans le forum XSL/XSLT/XPATH
    Réponses: 4
    Dernier message: 26/01/2005, 11h28
  5. Récupération des noms de champs d'une table
    Par Battomura dans le forum SQL
    Réponses: 2
    Dernier message: 24/03/2003, 10h00

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo