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

PL/SQL Oracle Discussion :

Affectation dans PL/SQL


Sujet :

PL/SQL Oracle

  1. #1
    Membre à l'essai
    Inscrit en
    Janvier 2010
    Messages
    212
    Détails du profil
    Informations forums :
    Inscription : Janvier 2010
    Messages : 212
    Points : 23
    Points
    23
    Par défaut Affectation dans PL/SQL
    bonsoir je voudrais connaitre la signification de ce code et plus précisément la ligne n°6
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    variable g_moi_sal number;
    variable p_annuel_sal number;
    declare
    v_sal number (9,2) :=& p_annuel_sal;
    begin
    :g_moi_sal:= v_sal/12;
    end;
    print g_moi_sal;
    ce que je n'ai pas compris les deux point avant la variable g_moi_sal pourquoi on met ça SVP?

  2. #2
    Membre expérimenté
    Avatar de islamov2000
    Homme Profil pro
    Ingénieur d'études & developpement en informatique
    Inscrit en
    Septembre 2007
    Messages
    814
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Ingénieur d'études & developpement en informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2007
    Messages : 814
    Points : 1 717
    Points
    1 717
    Billets dans le blog
    6
    Par défaut
    g_moi_sal, p_annuel_sal sont des variables hôtes, en quelque sort, elles sont des variables globales. Leurs utilisations se fait par les deux point (:) en avant.
    et

    p_annuel_sal est une variable de substitution. Elle ne nécéssite pas une déclaration. Son utilisation est précédée par un & .
    d'avoir Pensé à voter positivement pour ceux qui vous ont aidés et surtout à mettre si le cas.
    ça encourage.

  3. #3
    Membre à l'essai
    Inscrit en
    Janvier 2010
    Messages
    212
    Détails du profil
    Informations forums :
    Inscription : Janvier 2010
    Messages : 212
    Points : 23
    Points
    23
    Par défaut
    c'est quoi la différence entre les variables globales et les variables de substitution et quand on utilise chaque type de variable SVP?

  4. #4
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 080
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 9 080
    Points : 30 789
    Points
    30 789
    Par défaut
    Il s'agit là non pas d'un script PL/SQL mais d'un script Sql*plus comportant une portion de script PL/SQL (les lignes 2 à 7) faisant appel à des variables définies en Sql*plus.
    D'où la difficulté à comprendre ce script si l'on se penche uniquement sur les définitions de PL/SQL.
    Modérateur Langage SQL
    Règles du forum Langage SQL à lire par tous, N'hésitez pas à consulter les cours SQL
    N'oubliez pas le bouton et pensez aux balises
    [code]
    Si une réponse vous a aidé à résoudre votre problème, n'oubliez pas de voter pour elle en cliquant sur
    Aide-toi et le forum t'aidera : Un problème exposé sans mentionner les tentatives de résolution infructueuses peut laisser supposer que le posteur attend qu'on fasse son travail à sa place... et ne donne pas envie d'y répondre.

  5. #5
    Membre à l'essai
    Inscrit en
    Janvier 2010
    Messages
    212
    Détails du profil
    Informations forums :
    Inscription : Janvier 2010
    Messages : 212
    Points : 23
    Points
    23
    Par défaut
    juste je voudrais savoir la différence entre les variables globales et les variables de substitution et quand on peut utiliser chaque type de variable.

  6. #6
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 080
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 9 080
    Points : 30 789
    Points
    30 789
    Par défaut
    Les variables de substitution sont définies sur la ligne de commande d'appel à Sql*plus et visibles dans tout le script Sql*plus.
    Les variables globales sont définies à l'intérieur du script Sql*plus et visibles dans tout le script Sql*plus à partir de leur définition.
    Modérateur Langage SQL
    Règles du forum Langage SQL à lire par tous, N'hésitez pas à consulter les cours SQL
    N'oubliez pas le bouton et pensez aux balises
    [code]
    Si une réponse vous a aidé à résoudre votre problème, n'oubliez pas de voter pour elle en cliquant sur
    Aide-toi et le forum t'aidera : Un problème exposé sans mentionner les tentatives de résolution infructueuses peut laisser supposer que le posteur attend qu'on fasse son travail à sa place... et ne donne pas envie d'y répondre.

  7. #7
    Membre à l'essai
    Inscrit en
    Janvier 2010
    Messages
    212
    Détails du profil
    Informations forums :
    Inscription : Janvier 2010
    Messages : 212
    Points : 23
    Points
    23
    Par défaut
    ok merci bien c'est compris

  8. #8
    Membre expérimenté
    Avatar de islamov2000
    Homme Profil pro
    Ingénieur d'études & developpement en informatique
    Inscrit en
    Septembre 2007
    Messages
    814
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Ingénieur d'études & developpement en informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2007
    Messages : 814
    Points : 1 717
    Points
    1 717
    Billets dans le blog
    6
    Par défaut
    Citation Envoyé par boutheinanabeul Voir le message
    juste je voudrais savoir la différence entre les variables globales et les variables de substitution et quand on peut utiliser chaque type de variable.
    Variable de substitution est une variable utilisée pour faire entrer une valeur associée à une variable.
    exemple:
    à l'exécution du script, il est demandé de faire entrer une valeur.

    Ainsi, la variable hôte, et non pas globale, est une variables utilisée pour la session ouverte dans sqlplus.
    Par contre, la variable purement dite globale, on la trouve dans pl/sql implémenté sous Oracle FORMS. Elle est utilisée par toutes les formes(Oracle Forms) qui s'exécutent dans la même session.
    Elle est de type CHAR et est limitée à 255 caractères.
    Elle doit être précédée du préfixe :GLOBAL.

    exemple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    :GLOBAL.NOM:='toto';
    :GLOBAL.ID:='123';
    d'avoir Pensé à voter positivement pour ceux qui vous ont aidés et surtout à mettre si le cas.
    ça encourage.

  9. #9
    Membre à l'essai
    Inscrit en
    Janvier 2010
    Messages
    212
    Détails du profil
    Informations forums :
    Inscription : Janvier 2010
    Messages : 212
    Points : 23
    Points
    23
    Par défaut
    Elle doit être précédée du préfixe :GLOBAL.
    merci bien c'est compris mais selon ma recherche une variable globale est précédé seulement par : et non pas : GLOBAL.
    en tout cas merci une autre fois

  10. #10
    Membre expérimenté
    Avatar de islamov2000
    Homme Profil pro
    Ingénieur d'études & developpement en informatique
    Inscrit en
    Septembre 2007
    Messages
    814
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Ingénieur d'études & developpement en informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2007
    Messages : 814
    Points : 1 717
    Points
    1 717
    Billets dans le blog
    6
    Par défaut
    Citation Envoyé par boutheinanabeul Voir le message
    merci bien c'est compris mais selon ma recherche une variable globale est précédé seulement par : et non pas : GLOBAL.
    en tout cas merci une autre fois
    Je confirme que la variable globale utilisée dans pl/sql d'Oracle FORMS est précédée par C'est un mot clé.
    Et si on est sous sqlplus , elle s'appelle variable hôte. et précédé de :
    d'avoir Pensé à voter positivement pour ceux qui vous ont aidés et surtout à mettre si le cas.
    ça encourage.

  11. #11
    Membre à l'essai
    Inscrit en
    Janvier 2010
    Messages
    212
    Détails du profil
    Informations forums :
    Inscription : Janvier 2010
    Messages : 212
    Points : 23
    Points
    23
    Par défaut
    ok et si on ne met pas le mot global et on met juste les : c'est quoi la différence?

  12. #12
    Membre expérimenté
    Avatar de islamov2000
    Homme Profil pro
    Ingénieur d'études & developpement en informatique
    Inscrit en
    Septembre 2007
    Messages
    814
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Ingénieur d'études & developpement en informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2007
    Messages : 814
    Points : 1 717
    Points
    1 717
    Billets dans le blog
    6
    Par défaut
    Si on est sous Oracle Forms, et on ne met pas :GLOBAL; ça sera le nom d'un élément (champ d'édition, bouton ....).
    d'avoir Pensé à voter positivement pour ceux qui vous ont aidés et surtout à mettre si le cas.
    ça encourage.

  13. #13
    Membre à l'essai
    Inscrit en
    Janvier 2010
    Messages
    212
    Détails du profil
    Informations forums :
    Inscription : Janvier 2010
    Messages : 212
    Points : 23
    Points
    23
    Par défaut
    ok c'est compris merci bien

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

Discussions similaires

  1. [VB] requete SQL et affectation dans un champs
    Par erox44 dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 19/04/2007, 16h59
  2. fonction équivalente à la fonction MOD (oracle) dans ms-sql
    Par rodrigue50 dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 14/07/2005, 16h14
  3. une variable dans du SQL ??
    Par Black Pearl dans le forum Langage SQL
    Réponses: 3
    Dernier message: 18/06/2005, 12h55
  4. ASP et valeur NULL dans requêtes SQL
    Par chuck_m dans le forum ASP
    Réponses: 7
    Dernier message: 13/08/2004, 11h15
  5. uniqueidentifier et INSERT dans MS-SQL
    Par Dlfine dans le forum MS SQL Server
    Réponses: 11
    Dernier message: 12/08/2004, 11h29

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