to get the file

publicité
Spécialité EISIS
Expertise et Ingénierie des Systèmes d'Information en Santé
UE INF-MEDB : Aspects méthodologiques des bases de
données
______________________
Mise en œuvre d'une base de données
Partage des données
Spécialité EISIS UE INF-MEDB - D. FIESCHI
Partage des données d’une BD
• Exporter/importer tout ou partie des données vers
d'autres logiciels
– Autres bases de données (ACCESS, SQL, …),
– Tableurs (Excel, Lotus…),
– fichiers texte (.txt, .csv...)
Dans Open office  Par l'intermédiaire de la feuille de calcul OpenOffice Calc
• Accéder à distance aux données
– Odbc, JDBC, Internet
Spécialité EISIS UE INF-MEDB - D. FIESCHI
2
Exportation des données
1. Exporter vers la feuille de calcul OpenOffice
1. Sélectionner et copier la table ou la requête
2. Ouvrir openoffice.org Calc (Fichier – Nouveau –Classeur)
3. coller la sélection
2
3
 tous les enregistrements sont collés
1
Enregistrer Table patient  patient.ods
Spécialité EISIS UE INF-MEDB - D. FIESCHI
3
Exportation des données (2)
1. "Enregistrer sous" un
autre format
– Tableur : Excel, StarCalc…
– Base de donnée dbase ….,
– Texte .csv
– Html, xml
Spécialité EISIS UE INF-MEDB - D. FIESCHI
4
Exporter au format texte .csv
Copier la table patient dans la
feuille de calcul
– Enregistrer sous patient.csv
Définir les paramètres
d'exportation
Ces paramètres devront être
connus du futur utilisateur du
fichier
Spécialité EISIS UE INF-MEDB - D. FIESCHI
5
Importation de données .csv
Ouvrir le fichier Patient .csv dans la feuille de calcul
!!! Vérifier les paramètres
d’import
• Sélectionner et copier les
colonnes
Dans la base
• Coller dans la base
!!! Vérifier les paramètres
d’importation
!!! Cliquer sur Créér une clé primaire (sinon le copier/coller peut
bloquer. On peut la supprimer ensuite si une autre des colonnes
importées doit servir de clé primaire)
Spécialité EISIS UE INF-MEDB - D. FIESCHI
6
Importation de données – Table Patient (2)
• Sélectionner tous les champs
• Vérifier les propriétés
pour chacun des champs
Spécialité EISIS UE INF-MEDB - D. FIESCHI
7
Exercices
Exportation pour traitement dans un tableur
1. Exporter requête ComptePretparOeuvre
 Créer un graphique en secteur illustrant les
résultats
2. Exporter requête Catalogue des œuvres
 Créer un histogramme illustrant les résultats
Création du graphique
Spécialité EISIS UE INF-MEDB - D. FIESCHI
8
Partage  ODBC, JDBC
Ensemble de fonctions permettant la connexion à
un serveur de base de données
• Sources définies par le propriétaire de
la base dans le gestionnaire de source
(ex : sources ODBC)
Interface
de connexion
Spécialité EISIS UE INF-MEDB - D. FIESCHI
9
Partage  Web
• Statique  Exportation au format HTML, XML…
 image à un instant donné
• Dynamique
ASP
PHP
…
1- accès au serveur
2 – analyse des pages ASP - PHP
3,4 - accès, transfert données
5,6 – création, renvoi page HTML
Spécialité EISIS UE INF-MEDB - D. FIESCHI
10
Exporter au format HTML
Fichier patient.ods
Enregistrer sous
 patient.htm
• Statique
 image à un
instant donné
Spécialité EISIS UE INF-MEDB - D. FIESCHI
11
Exporter au format HTML (2)
B
A
L
I
S
E
S
Affichage du source
H
T
M
L
+
T
E
X
T
E
Spécialité EISIS UE INF-MEDB - D. FIESCHI
12
Accéder aux données via le Web
Base sur un serveur – Accès par des pages dynamiques
http://monserveur/Menu.html
http://monserveur/auteurs.php
Spécialité EISIS UE INF-MEDB - D. FIESCHI
13
Pages dynamiques (ASP / PHP)
• Pages sur un serveur Web qui les interprète (Microsoft
Internet Information Server (IIS), Apache, …)
• Contiennent des
– Balises HTML et
– Balises spéciales ASP <% script interprété sur le serveur%>
–
PHP <?php script interprété sur le serveur?>
génère une page HTML envoyée
au navigateur client
Spécialité EISIS UE INF-MEDB - D. FIESCHI
14
Structure d'une page d'accès à une base de
données
• Ouvrir la connexion sur le serveur base de données
• Ouvrir la base de données
• Définir les requêtes SQL à exécuter
Exécution  liste d'enregistrements
• Boucler sur les enregistrements pour traiter les données
et générer la page HTML qui sera affichée
• Fermer la connexion
bien maîtriser la syntaxe
Spécialité EISIS UE INF-MEDB - D. FIESCHI
15
Exemple page PHP
Paramètres de
connexion
connexion
La requête
Écriture des
résultats dans la
page
Spécialité EISIS UE INF-MEDB - D. FIESCHI
16
Environnement MySQL
"My Structured Query Language"
Logiciel Base de données Open Source
Proposé par de nombreux sites hébergeurs
Héberger ses données sur un site
ou
Installer MySQL sur un ordinateur personnel
Spécialité EISIS UE INF-MEDB - D. FIESCHI
17
Installer MySQL sur son ordinateur
WAMPServer http://www.wampserver.com/
ou
XAMPP http://www.apachefriends.org/fr/xampp-windows.html
ou
EasyPHP www.easyphp.org
• installent et configurent un environnement de travail avec
• un serveur web Apache,
• une base de données MySQL,
• le langage PHP pour créer des pages d'accès aux données,
• PHPmyAdmin pour la gestion de la base de données
Spécialité EISIS UE INF-MEDB - D. FIESCHI
18
Créer une base de données
Serveur – Commandes disponibles
Liste des
bases
Créer une base
Spécialité EISIS UE INF-MEDB - D. FIESCHI
19
La base de données MySQL
Base active – Commandes disponibles
Liste des
tables
Créer une table - définir
le nombre de champs
Spécialité EISIS UE INF-MEDB - D. FIESCHI
20
Créer une table – Définition des champs
Types
TINYINT, SMALLINT
MEDIUMINT
INTEGER, BIGINT
FLOAT
DOUBLE PRECISION
REAL, DECIMAL
Table active
dans la base
DATE
DATETIME
TIMESTAMP
TIME, YEAR
CHAR, VARCHAR
TINYBLOB,
TINYTEXT
BLOB , TEXT
MEDIUMBLOB
MEDIUMTEXT
LONGBLOB,
LONGTEXT
ENUM, SET
Spécialité EISIS UE INF-MEDB - D. FIESCHI
21
Créer une table (2)
requête SQL de
création de la table
Table crée
Structure de
la table
Spécialité EISIS UE INF-MEDB - D. FIESCHI
22
La base de données MySQL
Base active – Commandes disponibles
Liste des
tables
Choix des actions
sur les tables
Spécialité EISIS UE INF-MEDB - D. FIESCHI
23
Saisir des données - INSERT
Insérer
Zones de
saisie
Spécialité EISIS UE INF-MEDB - D. FIESCHI
24
Afficher
Spécialité EISIS UE INF-MEDB - D. FIESCHI
25
Importer des données à partir d'un fichier .csv (1)
• Table patient – Créer la structure puis importer les
données exportées précédemment
Importer
Paramètres
d'importation
Spécialité EISIS UE INF-MEDB - D. FIESCHI
26
Importer des données à partir d'un fichier .csv (2)
1. Ouvrir fichier patient.ods
1. Supprimer la première ligne contenant les noms de champs
2.  enregistrer patient.csv
2. Créer la table patient et définir chacun des champs
dans la base MySQL
Attention !!! Créer les mêmes champs, dans le même ordre
!!! Problèmes des dates - MySQL format AAAA-MM-JJ
 convertir les dates avant l'importation
1. Modifier le format dans patient.ods (menu Format Cellules)
2. enregistrer au format .csv
Spécialité EISIS UE INF-MEDB - D. FIESCHI
27
Exporter des données
Différents
formats
Paramètres
d'export
Spécialité EISIS UE INF-MEDB - D. FIESCHI
28
Exporter des données SQL
Création de
la table
Instruction d'Insert
des
enregistrements
Spécialité EISIS UE INF-MEDB - D. FIESCHI
29
Saisir des données à partir d'un fichier .sql
• Permet de créer des tables ou une base complète
Spécialité EISIS UE INF-MEDB - D. FIESCHI
30
Interroger – Manipuler les données
Exécuter SQL (1)
requête SQL
• Exporter une table au format sql (sans l’enregistrer)
• Copier les instructions générées dans la zone SQL
• Changer le nom de la table puis Exécuter
Spécialité EISIS UE INF-MEDB - D. FIESCHI
31
Les commandes importantes de SQL
• Définition de données
– CREATE , DROP , ALTER
• Manipulation de données
– SELECT , INSERT , UPDATE , DELETE
Documentation MySQL en français
• http://dev.mysql.com/doc/refman/5.0/fr/preface.html
Spécialité EISIS UE INF-MEDB - D. FIESCHI
32
Exercices
Soyez attentifs à la syntaxe des requêtes
•
•
•
Créer les tables de la base Bibliothèque
Insérer des données ou les importer de la base de
données du cours
Tester les requêtes créées dans la base OpenOffice
!!!
Vérifier la correspondance des noms de champs
Spécialité EISIS UE INF-MEDB - D. FIESCHI
33
Hébergeurs gratuits
• www.free.fr
• http://php.developpez.com/comparatifs/hebergeurs/
Attention
Vous êtes responsables de ce que vous créez et des
conséquences que cela peut avoir sur le serveur qui
vous héberge !!!
Spécialité EISIS UE INF-MEDB - D. FIESCHI
34
Téléchargement