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

Développement SQL Server Discussion :

Procédures stockées et Trigger


Sujet :

Développement SQL Server

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2018
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Septembre 2018
    Messages : 5
    Par défaut Procédures stockées et Trigger
    Pouvez vous m'aider à résoudre les deux questions au-dessous ?

    Médecin (IdMedecin, Nom,Prénom,DdN,Sexe,#IdSpecialite,#IdService)
    Specialite (IdSpecialite, libelle)
    Service (IdService, #IdHopital, NbLits) ;
    Séjourne (IdSejour, #IdService, #IdPatient, DateEntree, DateSortie)
    Patient (IdPatient, Nom, Prénom, DdN, Sexe, Adresse)
    Soigne (IdSoin, #IdMedecin, #IdPatient, nommaladie, Commentaire, Date_soigne)
    Hôpital (IdHopital, Nom, Adresse, Ville)

    1- Afficher le nom,le prénom et le numéro des patients ayant été suivis par au moins deux médecins de spécialité différente au cours de même séjour.
    2. Ecrivez un trigger qui permet d’adapter le même format du téléphone lors de la modification ou l’ajout des informations d’un Médecin (exemple de format souhaité 05 22.20.20.20).

  2. #2
    Invité
    Invité(e)
    Par défaut
    Si tu veux que l'on t'aide, fournis nous ce que tu as fait, on va t'aiguiller.
    Si tu veux que l'on fasse tes devoirs à ta place, non.

  3. #3
    Membre émérite
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    956
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 956
    Par défaut
    Bonjour,
    Je suis d'accord avec 7gyY9w1ZY6ySRgPeaefZ.
    Un indice pour le point 1, les mots cles sont Group by et having count

    Cordialement
    Soazig

  4. #4
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2018
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Septembre 2018
    Messages : 5
    Par défaut
    Citation Envoyé par 7gyY9w1ZY6ySRgPeaefZ Voir le message
    Si tu veux que l'on t'aide, fournis nous ce que tu as fait, on va t'aiguiller.
    Si tu veux que l'on fasse tes devoirs à ta place, non.
    1-
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Create proc P3
    as
    begin
    select P.NomP,P.PrénomP,IdPatient,count(IdMédecin) as 'nbr médecin'
    from  Soigne Sn inner join Patient P 
    on P.IdPatient = Sn.IdPatient inner join Médecin M
    on Sn.IdMédecin = M.IdMédecin inner join Spécialité Sp
    on M.IdSpécialité = Sp.IdSpécialité
    where DateSoigne between DateEntrée and DateSortie
    and count(IdMédecin) >= 2 
    and Sp.Libelle not in (select Libelle from Spécialité)
    end
    --2
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     Create trigger T
    on Médecin
    instead of insert,update
    as 
    begin
    if exists(select*from inserted where NumeroTél like '\d\d.\d\d.\d\d.\d\d.\d\d')
    raiserror ('format du tél invalide',16,1)
    rollback
    end
    voici les réponses que je fais,
    merci cordialement.

  5. #5
    Membre émérite
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    956
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 956
    Par défaut
    bonjour,
    1/Je t'ai suggéré d'utiliser having count, tu ne l'as pas fait.
    A mon sens ta requête ne compile pas.
    De plus dans l'énoncé on te demande les personnes soignées par des médecins de spécialités différentes, or tu ne fais que compter les médecins.
    2/ Ma compréhension de l'énoncé est de supprimer les caractères incorrects s'il y en a pas d'interdire les mises à jours.
    Cordialement
    Soazig

  6. #6
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2018
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Septembre 2018
    Messages : 5
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    alter proc P3
    as
    begin
    select P.NomP,P.PrénomP,IdPatient,count(IdMédecin) as 'nbr médecin'
    from  Soigne Sn inner join Patient P 
    on P.IdPatient = Sn.IdPatient inner join Médecin M
    on Sn.IdMédecin = M.IdMédecin inner join Spécialité Sp
    on M.IdSpécialité = Sp.IdSpécialité
    group by  P.NomP,P.PrénomP,IdPatient
    having count(IdMédecin) >= 2 
    end

  7. #7
    Membre émérite
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    956
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 956
    Par défaut
    Rebonjour,
    Ta requete compte toujours les médecins et pas les spécialités. Comme dans ton modèle de données un médecin n'a qu'une spécialité, c'est relativement simple à adapter.
    Mais de toute façon tu n'as pas traité l'aspect au cours de même séjour.


    Cordialement
    Soazig

Discussions similaires

  1. Procédure stockée ou trigger ou les 2 ?
    Par jpbelmondo59 dans le forum SQL Procédural
    Réponses: 3
    Dernier message: 02/10/2009, 14h23
  2. Procédure stockée ou trigger ?
    Par Invité dans le forum SQL Procédural
    Réponses: 4
    Dernier message: 28/11/2008, 01h24
  3. Appel de procédure stockée depuis trigger
    Par stephane.julien dans le forum MS SQL Server
    Réponses: 10
    Dernier message: 30/09/2008, 16h26
  4. [PL/SQL] Appel procédure stockée dans trigger
    Par Félia dans le forum Oracle
    Réponses: 3
    Dernier message: 24/01/2005, 17h25
  5. Procédures stockées et triggers
    Par benji17c dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 27/04/2004, 10h54

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