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

SQL Oracle Discussion :

SELECT * FROM TABLE@SCHEMA


Sujet :

SQL Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Février 2011
    Messages
    39
    Détails du profil
    Informations forums :
    Inscription : Février 2011
    Messages : 39
    Par défaut SELECT * FROM TABLE@SCHEMA
    Bonjour,

    je suis néophyte sur Oracle. J'ai un serveur de BDD sur lequel tourne cette base de données avec ce schéma (SRV-1).
    Sur une autre machine disposant d'un client oracle j'appelle cette fonction
    sqlplus %utilisateur%/%mdp%@%base% @fichier.sql >log_fichier.txt

    Dans le fichier j'ai l'instruction suivante :
    "SELECT * FROM TABLE@SCHEMA".
    Question1 : comment arrive t'il à déterminer ou se situe les données de SCHEMA, est ce par rapport à la connexion TNS la configuration de Oracle Net Manager\résolution de nom ? (en effet l'instruction du début n'appelle pas cette base et à aucun moment je n'y fait référence). Ou est ce que cela sius entend qu'un schéma est unique pour un réseau ?

    Autre question à la suite j'ai sqlplus %utilisateur%/%mdp%@%base% @fichier2.sql >>log_fichier.txt
    Est ce que les >> signifie à la suite dans le fichier ?

  2. #2
    Membre Expert
    Femme Profil pro
    Data engineer
    Inscrit en
    Juin 2007
    Messages
    673
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Data engineer
    Secteur : Conseil

    Informations forums :
    Inscription : Juin 2007
    Messages : 673
    Par défaut
    Bonjour,
    Dans l'instruction SELECT * FROM TABLE@SCHEMA, SCHEMA est le nom d'un DB-Link qui doit être défini dans la DB où se fait le SELECT.
    Les >> dans l'instruction suivante signifient bien que le résultat doit s'ajouter à la fin de log_fichier.txt.

  3. #3
    Membre averti
    Inscrit en
    Février 2011
    Messages
    39
    Détails du profil
    Informations forums :
    Inscription : Février 2011
    Messages : 39
    Par défaut
    Bonjour,

    ou trouve t'on le DBLINK ?
    Sur cette machine j'ai trouvé un pilote ODBC avec pour nom SCHEMA et pointant bien vers le serveur ou de trouve la base de données. est ce ça ?
    ou dois je chercher ailleurs qq part dans le client ou dans un fichier txt,

    Merci pour vos réponses

  4. #4
    Membre Expert
    Femme Profil pro
    Data engineer
    Inscrit en
    Juin 2007
    Messages
    673
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Data engineer
    Secteur : Conseil

    Informations forums :
    Inscription : Juin 2007
    Messages : 673
    Par défaut
    Bonjour,
    Je ne connais pas ce mode de fonctionnement...

    Pour moi, la base %base% est celle dans laquelle s'exécute l'instruction, et on y accède par le client Oracle local.
    Quant à la syntaxe @SCHEMA, elle permet normalement d'accéder à un autre serveur via un DB-Link défini à l'intérieur de la base %base% par l'ordre CREATE DATABASE LINK "SCHEMA"...
    On peut lister les DB-Links d'une base par l'instruction select * from dba_db_links.

  5. #5
    Membre averti
    Inscrit en
    Février 2011
    Messages
    39
    Détails du profil
    Informations forums :
    Inscription : Février 2011
    Messages : 39
    Par défaut
    Merci effectivement j'ai regardé dans database manager et ai constaté la présence des DB-LINK dans Distribué\Liens de base de données et en lançant effectivement la requete SQL mentionnée.
    Par contre ce qui est assez etonnant c est la syntaxe "SCHEMA.US.ORACLE.COM" est ce une syntaxe auto.
    L'intéret de rajouter des DB-LINK est il de faire des jointures inter bases ?

  6. #6
    Membre Expert
    Femme Profil pro
    Data engineer
    Inscrit en
    Juin 2007
    Messages
    673
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Data engineer
    Secteur : Conseil

    Informations forums :
    Inscription : Juin 2007
    Messages : 673
    Par défaut
    Re,
    Où as-tu trouvé la syntaxe "SCHEMA.US.ORACLE.COM" ? Dans la définition du DB-Link, dans dans la configuration du client Oracle ?
    Le DB-Link sert effectivement à faire communiquer des bases entre elles.
    Attention cependant aux performances, surtout quand on appelle des vues ou des fonctions dans la base distante...

  7. #7
    Membre très actif
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2011
    Messages
    146
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2011
    Messages : 146
    Par défaut
    Bonjour,

    tu peux aussi créer un synonyme pointant sur ta table distante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    CREATE OR REPLACE SYNONYM SCHEMA.TABLE FOR SCHEMA.TABLE@DB_LINK;
    Ensuite utilise le comme une table ordinaire de ton schéma.

    L’intérêt d'un dblink est en effet de pouvoir accéder à des données distantes.

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

Discussions similaires

  1. select * from table ?
    Par luckybag dans le forum Développement de jobs
    Réponses: 6
    Dernier message: 29/02/2012, 15h48
  2. select from table where in
    Par lcaya dans le forum SQL
    Réponses: 5
    Dernier message: 10/03/2010, 17h50
  3. JPA 2.0 Select * from table t where
    Par nouramin dans le forum JPA
    Réponses: 3
    Dernier message: 27/01/2010, 23h41
  4. Problème lors d'un select * from table
    Par smaildba dans le forum SQL
    Réponses: 1
    Dernier message: 12/11/2008, 12h36
  5. Select from table where
    Par kabalonda dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 25/07/2007, 17h43

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