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 :

Problème requete avec into dans trigger


Sujet :

PL/SQL Oracle

  1. #1
    Membre du Club
    Inscrit en
    Mai 2005
    Messages
    81
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Mai 2005
    Messages : 81
    Points : 56
    Points
    56
    Par défaut Problème requete avec into dans trigger
    Je réalise un trigger voici le code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
     
    CREATE OR REPLACE trigger gestion_emp
    AFTER INSERT
    ON PERIODE_SEJOUR
    for each row
     
    DECLARE
     
    nb_pers number(2);
    num_s number;
    date_f date;
    date_d date;
     
     
    cursor c_last_sejour is 
    select max(periode_sejour.Num_SEJOUR)as Sejour, max(Nb_PERSONNE) as Nombre
    from sejour, periode_sejour 
    where sejour.num_sejour=periode_sejour.num_sejour;
     
    BEGIN
     
    for ligne in c_last_sejour loop
         num_s := ligne.Sejour;
        nb_pers := ligne.Nombre;     
     
        select date_fin into date_f from sejour where num_sejour=num_s;
        select date_debut into date_d from sejour where num_sejour=num_s;
     
    select * from emplacement 
      where Num_emplacement IN (select sejour.num_emplacement 
                                from sejour,emplacement 
                                where sejour.num_emplacement = emplacement.num_emplacement 
                                and date_debut>= to_date(date_d,'DD-MM-YYYY') 
                                and date_fin<= to_date(date_f,'DD-MM-YYYY') 
                                and Nb_maxi_pers>=nb_pers) 
                                or (Num_emplacement NOT IN(select num_emplacement 
                                                           from sejour) 
                                   and Nb_maxi_pers>=nb_pers);
    END LOOP;
    END;
    Il me met cette erreur pour mon dernier select. Il me demande d'utiliser un into je ne vois pas pourquoi

    24/1 PLS-00428: une clause INTO est attendue dans cette instruction
    SELECT


    Merci pour vos réponses.

  2. #2
    Membre confirmé
    Avatar de argoet
    Inscrit en
    Mai 2002
    Messages
    582
    Détails du profil
    Informations forums :
    Inscription : Mai 2002
    Messages : 582
    Points : 562
    Points
    562
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    select * from emplacement 
      where Num_emplacement IN (select sejour.num_emplacement 
                                from sejour,emplacement 
                                where sejour.num_emplacement = emplacement.num_emplacement 
                                and date_debut>= to_date(date_d,'DD-MM-YYYY') 
                                and date_fin<= to_date(date_f,'DD-MM-YYYY') 
                                and Nb_maxi_pers>=nb_pers) 
                                or (Num_emplacement NOT IN(select num_emplacement 
                                                           from sejour) 
                                   and Nb_maxi_pers>=nb_pers);
    Efectivement vous faites un "select *" ==> into what ?

    Quel est le but de ce trigger ?

  3. #3
    Membre chevronné Avatar de Garuda
    Homme Profil pro
    Chef de projet / Urbaniste SI
    Inscrit en
    Juin 2007
    Messages
    1 285
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vaucluse (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chef de projet / Urbaniste SI
    Secteur : Bâtiment

    Informations forums :
    Inscription : Juin 2007
    Messages : 1 285
    Points : 2 071
    Points
    2 071
    Par défaut
    Un select renvoie des valeurs !
    Ou peut il les renvoyer dans un trigger ?
    Surement pas a l'ecran !

  4. #4
    Membre averti

    Profil pro
    Coach Agile
    Inscrit en
    Décembre 2005
    Messages
    316
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Coach Agile

    Informations forums :
    Inscription : Décembre 2005
    Messages : 316
    Points : 371
    Points
    371
    Par défaut
    A quoi sert cette dernière requête ?

  5. #5
    Rédacteur

    Homme Profil pro
    Développeur et DBA Oracle
    Inscrit en
    Octobre 2006
    Messages
    878
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur et DBA Oracle

    Informations forums :
    Inscription : Octobre 2006
    Messages : 878
    Points : 1 197
    Points
    1 197
    Par défaut
    Salut ,

    De plus
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    cursor c_last_sejour is 
    select max(periode_sejour.Num_SEJOUR)as Sejour, max(Nb_PERSONNE) as Nombre
    from sejour, periode_sejour 
    where sejour.num_sejour=periode_sejour.num_sejour;
     
    On peut le remplacer par 
    cursor c_last_sejour is 
    select max(sejour.Num_SEJOUR)as Sejour, max(Nb_PERSONNE) as Nombre
    from sejour
    where sejour.num_sejour=:new.num_sejour;

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

Discussions similaires

  1. requete avec variable dans VBA
    Par Mathieu.Nanoux dans le forum Requêtes et SQL.
    Réponses: 3
    Dernier message: 07/09/2007, 13h41
  2. Problème Requete avec MAX()
    Par kro001 dans le forum Langage SQL
    Réponses: 5
    Dernier message: 12/04/2007, 08h54
  3. Appeler Requete avec parametre dans Procedure
    Par shadockgreg dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 08/09/2006, 12h25
  4. Requete avec & et ' dans les noms
    Par doudoustephane dans le forum Langage SQL
    Réponses: 2
    Dernier message: 07/06/2006, 15h50
  5. [MySQL] Problème requete avec un count
    Par kornmuse90 dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 02/03/2006, 08h56

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