Licence de Psychologie - TD n° 9

Utilisation d'un SGBD relationnel - Deuxième partie




0) Changer son mot de passe sur le serveur Samba

Vous pouvez si vous le souhaitez, changer votre mot de passe sur le serveur Samba. Vous devez pour cela procéder de la façon suivante :

1) Réfléchissez et choisissez un "bon" mot de passe : 8 caractères, avec des lettres et des chiffres. Les mots de passe trop simples (11111111 ou zazazazaza par exemple) ne seront pas acceptés.

2) Mémorisez ce mot de passe. Si vous l'oubliez, l'intervention du technicien sera nécessaire.

3) Chargez l'application Telnet (menu Démarrer - Programmes - Accessoires - Telnet).

4) Sous Telnet, utilisez le menu Connecter - Système distant et complétez le dialogue de connexion en indiquant letsamba ou 172.18.140.18 comme nom d'hôte.

5) La fenêtre de terminal de Telnet vous permet alors de travailler en mode "ligne de commande" sur le système Unix de la machine qui abrite le serveur. Dans le tableau ci-dessous, les messages du système sont indiqués en gras, votre saisie est indiquée en caractères normaux :
 
Saisie Commentaire
login : dupond indiquez votre nom de compte
password : Lettres99 tapez le mot de passe actuel. Celui-ci ne s'affiche pas
dupond@infolettres> passwd La commande passwd permet de changer son mot de passe
Old password : Lettres99  
New password :  Tapez ici le nouveau mot de passe. Pensez à vérifier les positions des touches Verrouillage Majuscules et Verrouillage Numérique
New password (again) :  Tapez de nouveau votre nouveau mot de passe
Your password has been changed  

 

1) Reprendre le travail réalisé dans la fiche de TD N° 8

Pendant la session de travail, vous utiliserez de préférence votre compte sur le serveur Samba ou le disque temporaire E: comme support de la base de données,.

Si votre base de données se trouve sur votre compte sur le serveur, vous pouvez l'ouvrir à l'aide d'un double-clic.

Sinon, vous devez copier la base de données ONG.MDB, dans l'état où elle se trouve à la fin de la fiche de TD N°8, sur le disque de travail (serveur ou E:)

N.B. Si vous n'avez pas de base de données ONG.MDB convenable sur votre compte ou sur une disquette, copiez la base W:\PSY3\TD ACCESS\ONG-FinTD1.MDB et ouvrez l'exemplaire obtenu par copie.
 
 

2) Créer des formulaires et des requêtes

Les formulaires sont des objets permettant de réaliser des écrans de présentation ou vues sur les données de la base. Nous souhaitons par exemple pouvoir consulter :

- Des fiches concernant les interventions, dans lesquelles figure le nom du responsable

- Des fiches relatives aux intervenants, avec les interventions dont ils sont ou ont été responsables.

2.1 Le cas le plus simple : un formulaire de saisie et de consultation de la table Intervenants. Créez un nouveau formulaire. Spécifiez Intervenants comme source des données et utilisez l'assistant Formulaire instantané : Colonnes. Enregistrez le formulaire sous le nom Saisie Intervenants.

Le résultat final pourrait avoir l'aspect ci-dessous :

Exercices de monitorat : 1) Refaites la manipulation décrite ci-dessus, en utilisant cette fois l'assistant Assistant Formulaire. Observez les différences de comportement entre l'assistant Assistant Formulaire et l'assistant Formulaire Instantané: Colonnes. : le premier vous laisse choisir les champs qui apparaîtront dans le formulaire, et l'enregistre automatiquement en lui attribuant comme nom le titre que vous avez spécifié. Le second sélectionne automatiquement l'ensemble des champs de la table, mais vous laisse le soin d'enregistrer le formulaire.

2) Définir de même un formulaire de saisie de la table Interventions.
 
 

2.2 Le formulaire pour les interventions

Nous souhaitons réaliser un formulaire affichant les données relatives aux interventions, et mentionnant notamment les nom et prénom du responsable. Un tel formulaire contient des données en provenance des deux tables. Plus précisément, chaque page d'écran affiche des données obtenues en associant :

- une ligne de la table Interventions

- une ligne de la table Intervenants

et ces deux lignes sont liées par la relation que nous avons définie dans le TD précédent.

Cette situation est ici assez simple pour être prise en charge automatiquement par l'assistant Assistant Formulaire. Elle correspond à la situation-type suivante :

- Formulaire utilisant des données en provenance de deux tables ;

- Tables liées par une relation définie dans la structure de la base de données ;

2.2.1 Création du formulaire Créez ensuite un nouveau formulaire, en utilisant l'assistant Assistant Formulaire de la façon suivante :

Premier dialogue : Définissez un nouveau formulaire en utilisant l'Assistant Formulaire et la table Interventions.

Second dialogue : Choisissez d'inclure dans le formulaire tous les champs de la table Interventions. Puis déroulez la liste Tables/requêtes, sélectionnez la table Intervenants et ajoutez les champs Nom et Prénom de cette table.

Troisième dialogue : Ce dialogue n'apparaît que dans le cas où l'on utilise l'Assistant Formulaire pour définir un formulaire fondé sur plusieurs tables. Spécifiez ici Interventions comme table principale.

Quatrième Dialogue : choisissez une présentation "Colonne simple" pour le formulaire.

Cinquième dialogue : selon vos goûts...

Sixième dialogue : Indiquez comme titre Interventions avec responsables.

Microsoft Access compose alors le formulaire et l'enregistre sous le nom Interventions avec responsables. Le résultat final pourrait avoir l'allure ci-dessous :

2.3 Un formulaire avec sous-formulaire : les responsables

Dans le cas du formulaire précédent, les données présentes dans une fiche étaient issues d'une seule ligne de chacune des deux tables Intervenants et Interventions (pas de données répétitives, pas de listes). La structure du formulaire que nous voulons réaliser maintenant est différente : pour chaque intervenant (= 1 ligne de la table des intervenants) nous souhaitons afficher la liste des interventions dont il est ou a été responsable (= plusieurs lignes de la table des interventions). Dans Access, ceci est réalisé en créant un formulaire principal comportant un sous-formulaire. Le résultat final aura l'allure suivante :

2.3.1 Réalisation du formulaire

Vous procédez de la même façon que pour le formulaire précédent.

Créez un nouveau formulaire en utilisant l'assistant Assistant Formulaire. Spécifiez Intervenants comme table principale.

Sélectionnez les champs Code Intervenant, Nom, Prénom, Type Permis et Profession dans la table Intervenants, puis les champs Code Intervention, Objectif, Pays Intervention, Date Début, Durée dans la table Interventions.

Dans le dialogue intitulé "Comment souhaitez-vous afficher vos données?" sélectionnez par Intervenants et Formulaire avec sous-formulaire.

Le dialogue suivant concerne la disposition du sous-formulaire. Sélectionnez la présentation Feuille de données.

L'assistant demande également les titres du formulaire et de son sous-formulaire. Indiquez Responsables pour le premier, et Interventions sous responsabilité pour le second.

Remarquez que Microsoft Access enregistre non pas un, mais deux formulaires en utilisant les titres que nous avons fournis.

Remarque. Les possibilités des assistants nous permettent de créer sans trop d'efforts des objets "complexes" tels que le formulaire précédent. Mais la "magie" a ses limites, et si la structure de nos données est plus compliquée, il faut revenir à des solutions moins automatisées, comme nous le verrons dans la suite de cette étude.

3) Les autres tables du cas ONG

Pour obtenir une base de données conforme au MCD indiqué au début de polycopié précédent, trois autres tables sont nécessaires. Ces trois tables ont la signification suivante :

- la table Sites, rassemblant la liste des sites d'intervention

- la table Affectations qui représente l'association ...intervient dans... du MCD

- la table Se déroule qui représente l'association ...se déroule à... du MCD.

3.1 Ajout des tables à la base de données ONG

Pour ajouter ces tables à votre application, vous pouvez utiliser l'une des deux méthodes suivantes :

3.1.1 Importer des tables Access.

Affichez la fenêtre Base de données.

Sélectionnez le menu Fichier-Données externes-Importer...

Sélectionnez Microsoft Access (*.mdb) dans la liste Type de fichier.

Sélectionnez W:\PSY3\TD ACCESS\ONG-CORRIGE.MDB comme base de données source de l'importation, puis les tables Affectations, Se déroule et Sites.

3.1.2 Copier-coller entre bases de données Access.

Si la méthode précédente ne produit pas l'effet escompté, on pourra procéder de la manière suivante :

Sans refermer quitter Access ni refermer votre base de données, réaffichez l'explorateur, et copiez la base de données W:\PSY3\TD ACCESS\ONG-CORRIGE.MDB sur le disque E:.

Double-cliquez sur le fichier E:\ONG-CORRIGE.MDB. Un second exemplaire de Microsoft Access est alors chargé.

Copiez la tables Sites ; pour cela, cliquez sur son icône et utilisez le menu Edition - Copier.

Revenez à votre base de données (ONG.MDB) et collez la table copiée dans l'onglet Tables. en rétablissant le nom Sites.

Procédez de même pour la table Affectations puis la table Se déroule.

3.2 La sémantique des tables Sites, Se déroule et Affectations.

3.2.1 Extrait de la table Sites :

Code Site
Nom Site
Pays Site
BAND Bandiagara Mali
DJEN Djenné Mali

Univers du discours : les sites de codes BAND et DJEN sont les villes de Bandiagara et Djenné, au Mali.

3.2.2 Extrait de la table Se déroule :

Code Intervention
Code Site
Type Site
A03 ARME Principal
A03 BOGO Secondaire

Univers du discours : L'intervention de code A03 se déroule sur les sites codés ARME et BOGO. Le premier est le site principal de cette intervention.

3.2.3 Extrait de la table Affectations :

Code Intervenant
Code Intervention
Code Site
Début Mission
Fin Mission
18
R01 BAMA
12/12/1998
10/02/1999

Univers du discours : L'intervenant N° 18 participe à l'intervention codée R01 sur le site codé BAMA du 12/12/98 au 10/02/99.

3.3 Les clés primaires et les relations entre les différentes tables

Observez la structure et les données de chacune de ces tables.

3.3.1 Définir les clés

Ouvrez chacune des trois tables en mode structure et définissez la clé de chacune d'elles :

- Pour la table Sites, la clé primaire sera le champ Code Site.

- Pour la table Se déroule, aucun des champs ne constitue une clé. En revanche, la concaténation de champs Code Intervention + Code Site en constitue une. Pour définir une telle clé, sélectionnez simultanément les deux lignes correspondant à ces champs dans la fenêtre de structure, et utilisez le menu Edition - Clé Primaire.

- Pour la table Affectations, le problème est le même. On pourra prendre comme clé primaire Code Intervenant + Code Intervention + Code Site.

3.3.2 Définir les relations

Il faut ensuite définir les relations qui doivent lier nos tables (ou vérifier et compléter les relations existantes).

Définissez les relations correspondant aux associations du MCD :




4) D'autres formulaires de consultation

On veut pouvoir consulter les fiches relatives aux interventions indiquant notamment la liste des sites concernés.

Les données concernées proviendront des tables Interventions et Sites. Cependant, la table Se déroule joue ici un rôle essentiel : c'est elle qui établit le lien entre les données des deux tables précédentes.

Si l'on veut continuer à utiliser l'Assistant Formulaire, il est essentiel qu'au moins un champ de la table Se déroule soit présent dans le formulaire. Nous choisirons ici le champ Type Site.

Créez un nouveau formulaire en utilisant l'assistant Assistant Formulaire. Spécifiez Interventions comme table principale.

Sélectionnez les champs Code intervention, Objectif, Pays Intervention, Date Début et Durée dans la table Interventions, puis le champ Type Site dans la table Se déroule et enfin, les champs Code Site et Nom Site dans la table Sites.

Dans le dialogue intitulé "Comment souhaitez-vous afficher vos données?" sélectionnez par Interventions et Formulaire avec sous-formulaire.

Dans le dernier dialogue, indiquez comme titres Interventions et sites et Liste des sites.
 
 

Remarque.

Essayez de refaire le même formulaire, mais en omettant le champ Type Site. Vous constaterez qu'Access ne proteste pas, mais fournit un résultat erroné. En fait, en fouillant dans la structure du formulaire, on peut s'apercevoir qu'Access utilise alors la table Affectations pour réaliser la jointure entre les deux tables précédentes.
 
 

5) Exercices de monitorat.

* Réaliser un formulaire donnant pour chaque intervention, les coordonnées de son responsable et la liste des sites.

* Réaliser un formulaire donnant pour chaque intervenant, la liste de ses missions.

* Réaliser un formulaire donnant pour chaque intervention, la liste des intervenants.

Suite de l'exercice "Bibliothèque"

Créez une relation entre le champ NUMERO de la table Abonnés et le champ CODE ABONNE de la table Ouvrages. N'activez pas le contrôle de l'intégrité référentielle (et demandez-vous pourquoi ...).

Définissez un formulaire de consultation des fiches des ouvrages.

Créez un formulaire comportant un sous-formulaire permettant d'obtenir les abonnés, ainsi que la liste des ouvrages empruntés par chacun d'eux.

Cas Suivi Psychologique

Les services d'action sanitaire et sociale vous ont chargé d'assurer le suivi psychologique de jeunes enfants. A cette fin, vous les observez dans des conditions variées :

- soit lors d'entretiens individuels, à l'hôpital ou à votre cabinet ;

- soit dans le cadre d'observations de groupe, à l'école, dans des centres aérés, etc.

Après chaque observation, vous rédigez quelques lignes de "mémo" que vous voulez pouvoir retrouver sans peine. Vous décidez également du délai souhaitable avant la prochaine observation du sujet, et de la nature (individuelle ou collective) de cette observation. Exemples : * Vous avez observé Frédéric Le Goff le 22 mars 99, à l'école, dans le cadre d'une observation de groupe. Vous estimez souhaitable de le revoir 15 jours plus tard, en entretien individuel.

* Vous avez observé Marion Le Guen lors d'un entretien individuel à votre cabinet le 25 mars 99 et vous pensez que le suivi de cette enfant peut être interrompu.
 
 

Vous décidez de constituer une base de données sous Microsoft Access pour rassembler les informations relatives à l'organisation de cette activité : coordonnées des sujets, caractéristiques des séances, etc. Après réflexion, vous organisez vos données dans trois tables, avec les champs suivants :

N.B. Les champs Délai et Nature se rapportent à la prochaine observation que l'on prévoit de faire pour l'enfant. Le champ Délai contient le délai souhaitable, exprimé en nombre de jours. Un délai égal à 0 indique que vous pensez arrêter le suivi de l'enfant. Le champ Nature contient l'un des termes Individuelle, Collective. ou Indifférent. Le champ Réf-rapport contient un pointeur vers le mémo que vous avez rédigé (le nom du fichier correspondant, par exemple).

Le fichier F:\PSY3\TD ACCESS\SuiviPsy.MDB contient une base de données constituée selon la structure définie ci-dessus. Recopiez-le sur votre disquette, le disque E: ou votre compte Samba pour pouvoir l'utiliser en lecture/écriture.

1) Définir les clés des tables et les relations nécessaires entre les tables.

2) Saisir les données relatives à un enfant dont on vient de commencer le suivi (deux observations seulement), en respectant la cohérence des données.

3) Ajouter à l'une des tables de la base de données un champ donnant une information de nature psychologique (contenu réel au choix), et compléter ce champ pour quelques enregistrements.

4) Réaliser un formulaire donnant, pour chaque enfant, la liste des observations dont il a été l'objet.