• Aucun résultat trouvé

2. Création d’une BD Access 3. Tables

N/A
N/A
Protected

Academic year: 2022

Partager "2. Création d’une BD Access 3. Tables"

Copied!
79
0
0

Texte intégral

(1)

© Richard CHBEIR

Email richard.chbeir@u-bourgogne.fr

Microsoft Access Microsoft Access

Bibliographie :

• « Programmation Access pour Windows 95 », Edition Micro Application ISBN : 2-7429-0635-5

• « Au quotidien Microsoft Access 97 » Edition Microsoft Press, ISBN: 2-84082-159-1

(2)

1. Introduction

2. Création d’une BD Access 3. Tables

4. Requêtes 5. Formulaires 6. Etats

7. Macros

8. Pages Web

9. Modules

(3)
(4)

D D é é finition finition

SGBD Relationnel

Pas cher

Facile à utiliser

Adapté au PME/PMI

Compatibilité

Windows

Versions

(5)

Installation Installation

Matériels requis

PC

Logiciels requis

Windows 3.1, 9x, NT, 200x, XP Microsoft Office

Professionnel Premium

Séparé

(6)

Objets de la BD Access Objets de la BD Access

Table

Requête (Query) Formulaire (Form) Etat (Report)

Macro Module

Pages WEB (uniquement version 2000 et XP)

Manipulables comme des objets Windows

Manipulables comme des objets Windows

(7)

Architecture d

Architecture d Access Access

Tables Requêtes (Queries)

Etats (Reports) Formulaires

(Forms)

Macros Modules

Exécution Fonctions

Appel Déclenchement

Ouverture/filtre

Appel

A

Ouverture/filtre

Exécution Fonctions

Appel

Appel Définition de formulaire, table,

etc.

A

Impression/Affichage/filtre

A

Exécution des requêtes sur des tables ouvertes Flux de données

(8)

Access

Access

(9)

M M é é thodes thodes

Vide

Basée sur des modèles prédéfinis

(10)
(11)

Cr Cr é é ation des tables ation des tables

Il y a 2 types de méthodes

1.

Manuelles Assistant

Mode Création

Mode Feuille de données

2.

Automatiques Scripts

Données Externes

(12)

M M é é thodes manuelles thodes manuelles

1. 1. Assistant Assistant

(13)

M M é é thodes manuelles thodes manuelles

2. Mode Création

Type de données

» Texte

» Mémo

» Numérique

» Date/heure

» Monétaire

» NuméroAuto

» Oui/Non

» Objet OLE

» Lien hypertexte

» Liste de choix

Propriétés

– Taille, Format, Masque de saisie, Valeur par défaut, etc.

Clé et index

(14)

M M é é thodes automatiques thodes automatiques

1. Script VB

A partir des logiciels Atelier de Génie Logiciel (AGL)

WinDesign, AMC Designer (PowerDesigner), etc.

Passage par les modules

Insertion du script

Exécution

(15)

M M é é thodes automatiques thodes automatiques

2. Données externes

Importer (duplication)

Oracle, DB2, Sybase, Foxpro, etc.

Attacher/Lier avec (pointeur)

Oracle, DB2, Sybase, Foxpro, etc.

Avantages

– Client/serveur (Access comme un client) – Développement rapide

– Partage simple

(16)

Access en Client Access en Client

Réseau Ou en local

Tables Access Oracle Sybase

Attacher ODBC

Table O

Attacher ODBC

Attacher .mdb

(17)

Mode de visualisation Mode de visualisation

Mode de cr

Mode de cr é é ation ation

Il sert

Il sert à à cré cr éer ou er ou à à modifier la modifier la structure d

structure d ’une table ’ une table

Mode Feuille de donn

Mode Feuille de donn ées é es

Il permet de saisir les donn

Il permet de saisir les donné ées, faire es, faire des tris, appliquer des filtres, etc.

des tris, appliquer des filtres, etc.

(18)
(19)

Types de requête Types de requête

Requêtes de sélection Requêtes paramétrées

Requêtes action (Création, Ajout, Mise à jour, Suppression,

etc.)

(20)

Mode de visualisation Mode de visualisation

Mode de création

Il sert à créer une nouvelle requête ou à en modifier une existante

Mode SQL

Il permet de saisir du code SQL, et/ou de modifier le code SQL généré par Access

Mode Feuille de données

Il sert à afficher plusieurs lignes à la fois

(21)

Cr Cr é é ation d ation d une requête une requête

Choisir l’onglet Requête Cliquer sur Nouveau

Choisir Mode Création/Assistant

Sélectionner les tables (ou de requêtes) utiles pour la création de la nouvelle requête

Etablir les liens entre ces tables et ces requêtes (quand ils n’existent pas)

Ecrire les critères et/ou les opérations d'interrogation Choisir le type de la requête

Enfin, lancer de la requête (!).

(22)

Exemple Exemple

Voici le schéma d’une BD

(23)

Trouver Nom, adresse, ville et téléphone de tous les clients qui habitent Londres

En SQL:

SELECT Nom, Adresse, Ville, Téléphone FROM Clients

WHERE Ville = "London“

Requête

Requête de s de s é é lection lection

!

1

5

4

3 2

• • En QBE En QBE

(24)

Requête param

Requête param é é tr tr é é e e

Trouver Nom, adresse, ville, téléphone et fax d’un client donné

En SQL:

SELECT Nom, Adresse, Ville, Téléphone, Fax FROM Clients

WHERE Nom =[Donnez le nom]

• • En QBE En QBE

(25)

Requête avec op

Requête avec op é é ration ration

Trouver la quantité du produit numéro 1 vendu par chaque employé

En SQL:

SELECT Commandes.[N° employé], Sum([Détails commandes].Quantité) FROM Commandes, [Détails commandes]

WHERE (((Commandes.[N° commande])=[Détails commandes].[N° commande])) GROUP BY Commandes.[N° employé], [Détails commandes].[Réf produit]

HAVING ((([Détails commandes].[Réf produit])=1));

• • En QBE En QBE

(26)

Tr Tr è è s important s important

Quels sont les caractères génériques

acceptés dans les critères d’interrogation ?

? Tout caractère unique

* Aucun ou plusieurs caractères quelconques

# Tout chiffre unique (de 0 à 9)

Comme (LIKE en SQL) permet de faire une comparaison approximative

Exemple: Comme ## PetitJean dans adresse:

toutes les personnes qui habitent la rue PetitJean et dont le

(27)

d d action action

Avant de créer une requête d’action,

Ecrivez d ’abord la même requête de sélection, Testez-la

Puis convertissez-la en une requête action

(28)
(29)

D D é é finition finition

Permet de saisir, modifier, et visualiser des données Les données d'un formulaire peuvent être:

Dépendantes d'une table ou d'une requête.

Indépendantes (texte, logo, calcul, ...).

(30)

Types de Formulaires Types de Formulaires

Formulaires en colonne simple

Formulaires en colonne simple Formulaires Tabulaires Formulaires Tabulaires

(31)

Cr Cr é é ation ation

Mode de création

Il sert à créer un nouveau formulaire ou à en modifier un existant

Mode Formulaire (ou colonne simple) Mode Formulaire (ou colonne simple)

Il est utilis

Il est utilisé é pour cr pour cr éer, saisir et afficher des donn é er, saisir et afficher des donné ées. La es. La visualisation des donn

visualisation des donné ées est faite fiche par fiche. es est faite fiche par fiche.

Mode Tabulaire Mode Tabulaire

Il sert

Il sert à à afficher plusieurs lignes à afficher plusieurs lignes à la fois la fois

Mode feuille de donn

Mode feuille de donn ées é es

Il ressemble beaucoup et

Il ressemble beaucoup et é étrangement au mode tabulaire trangement au mode tabulaire

(32)

Formulaire en mode cr

Formulaire en mode cr é é ation ation

Barre à outils Formulaire

vierge

Différents modes

(33)

Structure d

Structure d un formulaire un formulaire

Un formulaire est décomposé en plusieurs parties:

En-tête de formulaire (utilisé pour la présentation à l ’écran). Ex: titre du formulaire, noms de colonnes.

En-tête de page : idem que l’en-tête de formulaire. Utilisé au niveau impression uniquement

Détail: contient les enregistrements (données).

Pied de formulaire : idem que l’en-tête.

Pied de page (utile si vous voulez

imprimer un formulaire). Ex: numéro de pages

Par défaut, seule la partie détail apparaît

Mais comment les afficher ?

(34)

La bo

La bo î î te te à à outils outils

Étiquette Zone de texte

Groupe d'options Bouton bascule bouton d'option Case a cocher liste modifiable Zone de liste Bouton Graphique

Objet indép. Objet dépendant saut de page Contrôle d’Onglets Sous formulaire trait

Rectangle Autres

(35)

Les contrôles Les contrôles

Tout le contenu d'un formulaire est affiché à l’aide d’éléments appelés contrôles :

Contrôle dépendant :

Associé à un champs provenant d’une table ou d’une requête

Contrôle indépendant

Pour afficher des rectangles, des traits et des images

Contrôle calculé :

Pour afficher des valeurs provenant d'une expression

Par exemple : [Prix unitaire] * 0,75

(36)

Les contrôles Les contrôles

Chaque contrôle a ses propres propriétés (Format, Données, événements, etc.)

Les événements dépendent de chaque type de contrôle

(37)

d d é é pendant ? pendant ?

1- Je click

2- Je glisse-déplace

(38)

Et les autres contrôles ? Et les autres contrôles ?

Exemple d'un contrôle dépendant : la propriété Source contrôle contient le nom d'un champ de la source du formulaire.

Exemple d'un contrôle indépendant : la

propriété Source

contrôle est vide.

(39)

La notion de champ calcul La notion de champ calcul é é

Un champ calculé est une expression constituée de toute combinaison valide d'opérateurs, de

fonctions et de références à d'autres contrôles.

Pour afficher la date dans un contrôle, il suffit de

taper dans Source contrôle l'expression =Date().

(40)

calcul

calcul é é s s

(41)

D D é é signation signation

Pour réutiliser la valeur saisie dans un champ, il faut juste noter le nom du champ (ou contrôle) concerné placé entre crochets.

Exemple: afficher la valeur saisie dans le champ

Port (du même formulaire) augmenté de 10 =

[port] + 10.

(42)

D D é é signation signation

Pour récupérer la valeur:

d'un contrôle dans un autre formulaire :

Formulaires![NomFormulaire]![NomContrôle]

(43)

Le g Le g é é n n é é rateur d'expression rateur d'expression

Access est pourvu d'un ensemble de fonctions

prédéfinies très riche. Pour les découvrir, il suffit de faire appel au Générateur d'expression en cliquant sur

Cet outil est accessible aux différents endroits autorisant

l'entrée d'une expression (Requête, formulaire, et état)

(44)

Comment afficher l

Comment afficher l heure ? heure ?

(45)

A quoi servent les boutons ? A quoi servent les boutons ?

Ils sont utilisés pour différents types opérations

Ouvrir formulaire, fermer formulaire, …

Navigation dans les enregistrement (suivant, précédent, …)

Lancer Word, Quitter l’application Impression

Calculs

Ils peuvent être générés automatiquement (il suffit de suivre les instructions qui apparaissent

Démonstration

(46)

Et les listes d

Et les listes d é é roulantes ? roulantes ?

Permettent de sélectionner une valeur dans une liste prédéfinie. Les valeurs peuvent être

extraites à partir d'une table ou d'une requête . Deux types de listes

une zone de liste qui comprend une série de valeurs parmi lesquelles vous pouvez faire votre choix. Cette liste reste toujours affichée dans le formulaire.

une zone de liste modifiable : c'est la combinaison d'une zone de texte et d'une zone de liste. Vous pouvez soit

choisir une valeur dans la liste,

(47)

Pourquoi un sous

Pourquoi un sous - - formulaire ? formulaire ?

Un sous-formulaire est tout simplement un formulaire inclus dans un autre formulaire.

Un sous-formulaire peut servir à afficher

Des relations un-un

Des relations un-plusieurs

Exemples:

Affichage des commandes par Client (Utilisation d’un seul sous-formulaire)

Affichage pour chaque client de la liste des commandes obtenus et des détails de

chaque commande (Utilisation de deux sous-formulaires)

(48)

Conseils pratiques Conseils pratiques

Utiliser Access pour générer un menu principal (outils/Utilitaire de base de

données/Gestionnaire de menu Général) Utiliser des formulaires :

D’orientation

De maintenance de la BD

(49)
(50)

D D é é finition finition

Permet de visualiser et d’imprimer des données

Provenant d'une table ou d'une requête,

indépendantes (texte, graphiques, et statistiques, ..)

(51)

Comment cr

Comment cr é é er un er un é é tat ? tat ?

Démonstration

(52)
(53)

D D é é finition finition

C’est un ensemble d’actions successives. Ces actions correspondent à des tâches prédéfinies dans Access

Plusieurs types :

Ouvrir un formulaire, Exécuter une requête, Imprimer un état, etc.

Afficher des messages (d’alerte, d’erreur, etc.) Changer le pointeur de la souris

Personnaliser le menu des formulaires

Quitter une application, lancer Internet, etc.

Etc.

(54)

Comment cr

Comment cr é é er une macro ? er une macro ?

Démonstration (encore une)

(55)

Macros importantes Macros importantes

Certaines macros ont une certaine importance

AutoExec : Elle est exécutée lors du lancement de la base

AutoKeys : Elle permet de donner à certaines

touches du clavier certaines actions spécifiques

(56)

Exemple Macro 1 Exemple Macro 1

Autokeys:

1- Saisir dans nom de macros

^A or ^4 CTRL+ un caractère

{F1} la touche F1

^{F1} CTRL+F1

+{F1} SHIFT+F1

%+{ F1} ALT+SHIFT+F1

2 2 - - Les actions correspondantes Les actions correspondantes

(57)

Exemple Macro 2 Exemple Macro 2

AutoExec

(58)

Comment ? Comment ?

Insérer une macro dans un événement

(59)

Comment ? Comment ?

Accéder à une commande dans une macro

(60)

Exemple Macro 3 Exemple Macro 3

Pour créer une barre de menus

1. Créer chaque menu dans une macro séparée

2. 2. D D é é finir le contenu menu dans une autre macro finir le contenu menu dans une autre macro

(61)

Exemple Macro 3 Exemple Macro 3

3. Préciser le menu du formulaire

4. 4. Tester le r Tester le r é é sultat sultat

(62)

Toute macro peut être convertie en

VB VBA

Mais comment ?

(63)
(64)

Cr Cr é é ation ation

(65)

Access permet de créer les pages

Mais ne les gère pas

Il faut juste un lien vers la page

Si on déplace la BDD, Access est incapable de l’interdire

Dé D é monstration monstration

(66)
(67)

Visual Basic pour Application (VBA)

Visual Basic pour Application Visual Basic pour Application

(VBA)

(VBA)

(68)

Quand utiliser les modules ? Quand utiliser les modules ?

Répondre à un besoin complexe Gérer les erreurs

Gérer des évènements paramétrés

Interagir avec une autre application ou avec DDE (Dynamic Data Exchange)

Appeler des API de Windows

Manipuler les jeux d’enregistrements Désirer des meilleurs performances (Maintenance)

Etre pro quoi ;)

(69)

DBA DBA

(70)

D D é é finition finition

Définition du schéma Analyse

De performance, table, etc.

Conversion Compression Réparation Cryptage Migration Sécurité

Autorisation, groupe d’utilisateur, mots de passe, etc.

(71)

Sch Sch é é ma de la base ma de la base

(72)

DB DB

Access a été conçu pour fonctionner en mode multi-utilisateurs (accès simultané à la même base par plusieurs personnes).

Pour cela, une méthode simple consiste à

"fractionnée" la base (base.mdb) dans une

nouvelle base partagée (base_fractionnée.MDB)

.

(73)

base (1) base (1)

Access 2000-XP: menu principal

Outils/Utilitaires de base de données Access 95-97 : menu principal

Outils/Compléments

(74)

base (2) base (2)

Enregistrer sous : le nom de la base MDB partagée (ex: base_fractionnée.MDB)

Ce fichier doit être placé dans un dossier partagé sur le réseau.

Ce fichier contient uniquement les tables.

(75)

R R é é sultat sultat

La base initiale base.mdb contient maintenant des tables attachées (ou liées) uniquement.

Naturellement, Access devra être installé sur chaque

poste à partir duquel l'application pourra être lancée.

(76)

La mise

La mise à à jour des attaches jour des attaches

Access 2000-XP:

menu Outils/Utilitaires de base de données/

Gestionnaire de tables liées Access 95-97:

menu Outils/Compléments/Mise à jour des liens.

(77)

La gestion des conflits d'acc

La gestion des conflits d'acc è è s s

Si deux utilisateurs modifient le même enregistrements de la même table un conflit sera signalé.

En fait, le premier utilisateur U1 qui sauvegardera ses modifications pourra poursuivre sans être importuné par son collègue. Par contre, lorsque le deuxième U2 tentera d'en faire de même, il sera averti par l'affichage du

message suivant, qu'un changement a eu lieu sur

l'enregistrement qu'il tente de modifier.

(78)
(79)

1. Est-ce qu’Access est capable d’interagir avec Excel?

Si oui, Comment ?

2. Quels sont les intérêts de compacter une base Access ? 3. Comment faire une réplication sous Access ?

4. A quoi sert le menu Outils/démarrage ?

Références

Documents relatifs

[r]

 Pompe volumétrique : Transmission de l'énergie cinétique du moteur en mouvement de va-et-vient..  Pompe

Ils sont ensuite émis sans vitesse par la source S, puis accélérés par un champ électrostatique uniforme qui règne entre S et P tel que.. U sp

En reprenant la requête de base, on ajoutera là aussi une jointure avec la table « Type Ouvrage » de sorte à faire apparaître le libellé type (c'est-à-dire CD, DVD, Livre) et

L’objectif de cette activité est de réaliser un module permettant de fusionner deux tables avec des descripteurs différents mais avec une clé d’identification

1) Cliquez sur l'icône Sélectionner des thèmes dans la barre d'outils Outils. Si cette barre d'outils n'est pas visible, vous pouvez l'afficher en utilisant Affichage > Barres

On peut ensuite trier cette liste (puisqu’elle contient des tuples et non des dictionnaires, il n’y a même pas besoin de fonction clé), puis faire la jointure sur le code ISO de

Créer alors une variable t able contenant l’ensemble des données des deux tables aux- quelles sont ajoutées, pour chaque ligne, les deux données des champs supplémentaires..