Upload
others
View
1
Download
0
Embed Size (px)
Citation preview
1
Cours&d’accompagnement&de&l’APP&«&Passage&d’ACCESS&à&MySQL&»&
&&&
!
Valérie Bellynck Responsable Licence Professionnelle - Planification
LP!Bases!de!données!
2
Sommaire!
1. Extension&du&sujet&2. Différence&ACCESS&&Serveur&MySQL&3. OrganisaLon&de&l’APP&&4. Qu’estGce&que&MySQL&?&5. SQL&sous&ACCESS&6. Transfert&des&données&et&du&modèle&logique&de&ACCESS&à&MySQL&7. Branchement&d’ACCESS&non&pas&sur&msSQL&mais&sur&MySQL&via&un&connecteur&&8. Liens&praLques&&
!!&PréGrequis&pour&les&cours&sur&le&développement&Web&&
2
3
Extension!du!sujet!
Extension&de&l’étude&de&cas&[…]$Après$2$semaines$de$projet,$vous$avez$avancé$sur$la$réalisa;on$de$votre$base$de$données$et$avez$pu$en$parler$avec$votre$responsable.$Celui?ci$se$ques;onne$sur$la$possibilité$d’intégrer$votre$réalisa;on$dans$un$système$d’informa;on$qui$s’appuie$sur$une$base$de$données$MySQL.$Pour$vérifier$la$faisabilité$de$ceKe$idée,$il$vous$demande$de$transcrire$en$MySQL$toutes$les$requêtes$u;les$à$l’export$de$votre$base$de$données$dans$une$base$de$données$MySQL,$ainsi$que$toutes$les$requêtes$qui$sont$exploitées$dans$vos$formulaires.$Vous$devrez$écrire$ces$requêtes$en$algèbre$rela;onnelle$puis$les$traduire$en$MySQL$pour,$finalement,$les$tester$sous$PhpMyAdmin.$$[…]$
4
APP!et!Organisa8on!
ApprenLssage&par&Problème&&&& $$Buts$(orienté$«$compétences$»)$
– devenir$autonome$pour$apprendre$– confronter$sa$compréhension$du$Pb,$de$la$ma;ère$– communiquer$efficacement$face$à$une$tâche$$
• Séances$CM$/$TTG$/$TRAP$– Cours$Magistral$/$en$Remédia;on$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$/$en$réponse$à$Ques;ons$
– Travail$Tutoré$en$Groupe$– TRAvail$Personnel$(non$encadré)$
• Chamillo$/$;prof$/$Google$
5
Extension!du!sujet!
Extension&de&l’étude&de&cas&[…]$Après$2$semaines$de$projet,$vous$avez$avancé$sur$la$réalisa;on$de$votre$base$de$données$et$avez$pu$en$parler$avec$votre$responsable.$Celui?ci$se$ques;onne$sur$la$possibilité$d’intégrer$votre$réalisa;on$dans$un$système&d’informaLon$qui$s’appuie$sur$une$base$de$données$MySQL.$Pour$vérifier$la$faisabilité$de$ceKe$idée,$il$vous$demande$de$transcrire&en&MySQL&toutes$les$requêtes$u;les$à$l’export$de$votre$base$de$données$dans$une$base$de$données$MySQL,$ainsi$que$toutes$les$requêtes$qui$sont$exploitées$dans$vos$formulaires.$Vous$devrez$écrire&ces&requêtes&en&algèbre&relaLonnelle,$puis$les$traduire&en&MySQL$pour,$finalement,$les$tester&sous&PhpMyAdmin.$$[…]$
6
Vocabulaire!et!tâches!
Vocabulaire&&&&&&&(
7
SQL / mySQL / msSQL & phpMyAdmin
8
Différence!ACCESS!!Serveur!MySQL!PHPMyAdmin!
ACCESS$• Est$une$interface$entre$l’u;lisateur$et$la$machine$(IHM)$• Transmet$des$commandes$au$SGBD$sous?jacent$$
(msSQL$par$défaut)$
MySQL$• Est$un$serveur$de$bases$de$données$$• Répond$à$des$requêtes$MySQL$PHPMyAdmin$• Est$une$interface$Web$écrite$en$PHP$• Génère$des$formulaires$HTML$qui$créent$des$requêtes$
mySQL$,$les$envoie$au$serveurde$BD,$interprète$et$présente$les$réponses$dans$des$pages$HTML$
9
Qu’estCce!que!MySQL!?!
SQL$(Structured$Query$Language)$$– est$un$langage$d’accès$normalisé,$c?à?d$une$norme$qui$décrit$un$langage$de$
requêtes$$pour$accéder$aux$données$de$bases$de$données$rela;onnelles$
– est$supporté$par$la$plus$part$des$SGBD$– est$un$langage$«$déclara;f$»$mais$pas$«$impéra;f$»$(pas$de$condi;ons,$pas$
de$boucles)$
MySQL$$– est$une$implémenta;on$de$la$norme$SQL$– ne$réalise$pas$toutes$les$spécifica;ons$de$la$norme$– est$exploité$avec$le$langage$de$script$PHP$pour$générer$des$pages$Web$liées$
à$une$base$de$données$$$hKp://cyberzoide.developpez.com/php4/mysql/ $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$cours$en$français$sur$mySQL$par$Hugo$ETIEVANT$
$
10
SQL!?!
SQL$(Structured(Query(Language)$$$$$$$$=(langage(structuré(de(requêtes($Langage&de&définiLon&des&données&(LDD)&
– Créer$/$Modifier(=$altérer)$/$Supprimer$des$tables$$Langage&de&manipulaLon&des&données&(LMD)&
– Insérer,$modifier,$supprimer$des$enregistrements$$– Extraire$des$données$(requêtes)$$
$Langage&de&contrôle&de&données&(LCD)&&– Créer,$modifier,$supprimer$des$droits$d’accès$$
$$hKp://dev.mysql.com/doc/refman/5.6/en/index.html$$
11
SQL!–!LDD!:!!Créa8on!d’une!rela8on!
Etudiant(carteNo [int], nomEt [string], prenomEt [string]) !
CréaLon$$à$par;r$de$son$nom,$$$$$$$$$$$$$$$$$$$$$$ses$aKributs$et$leur$domaine,$$$$$$$$$$$$$$$$$$$$$$sa$clé$primaire$CREATE TABLE Etudiant (carteNo Char(7) NOT NULL, nomEt Char(20), prenomEt Char(20), PRIMARY KEY (carteNo));!
hKp://dev.mysql.com/doc/refman/5.7/en/create?table.html$(pas$en$fr…)$CREATE$TABLE$$($[NOT$NULL]$[,$.$.$.]$[,$PRIMARY$KEY$(]$[,$.$.$.])$]$)$$
$Démo$sous$MAMP$hKp://localhost:8888/phpMyAdmin/index.php?db=test$$
12
PhpMyAdmin$?$CREATE$
13
SQL!–!LDD!:!!Suppression/Altéra8on!d’une!rela8on!
Etudiant(carteNo [int], nomEt [string], prenomEt [string]) !
Suppression$$à$par;r$de$son$nom$DROP TABLE Etudiant;$
DROP$TABLE$$$
AltéraLon&/&ModificaLon&$à$par;r$de$son$nom$$$$$$$$$$$$$$$$$$$$$$$$$et$des$aKributs$(et$leur$domaine)$à$supprimer/modifier$
ALTER TABLE Etudiant ADD adresse Char(100);$ALTER$TABLE$$$$$$$$$$$$$$$$$$$$$$$$$$$$ADD|DROP$($)$$
$Démo$sous$MAMP$hKp://localhost:8888/phpMyAdmin/index.php?db=test$$
14
SQL!–!LMD!:!!Inser8on!d’un!enregistrement!
Etudiant(carteNo [int], nomEt [string], prenomEt [string]) !
InserLon&$à$par;r$du$nom$de$la$rela;on$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$et$des$valeurs$des$aKributs$$renseignées$INSERT INTO Etudiant VALUES ('6229733', 'Martin', 'Anne');!INSERT INTO Etudiant (carteNo, nomEt) VALUES ('6229733',
'Martin');!
INSERT$INTO$[($[,$.$.$.])$VALUES$$[,$.$.$.]$$
$Démo$sous$MAMP$hKp://localhost:8888/phpMyAdmin/index.php?db=test$$
15
PhpMyAdmin$?$INSERT$
16
SQL!–!LMD!:!!Suppression!d’un!enregistrement!
Etudiant(carteNo [int], nomEt [string], prenomEt [string]) !
Suppression&$à$par;r$du$nom$de$la$rela;on$$$$$$$$$$$$$$$$$$$$$$$$et$des$aKributs$(et$leur$domaine)$à$supprimer/modifier$DELETE FROM Etudiant WHERE nomEt = 'Martin' AND prenomEt
= 'Chloé';!$DELETE$FROM$$$$$$$$$$$$$$$WHERE$($=$$[$AND$$=$])$$
$Démo$sous$MAMP$hKp://localhost:8888/phpMyAdmin/index.php?db=test$$
17
PhpMyAdmin$?$DELETE$
18
SQL!–!LMD!:!!Modifica8on!d’un!enregistrement!
Etudiant(carteNo [int], nomEt [string], prenomEt [string]) !
Mise&à&jour&$à$par;r$de$la$rela;on,$$$$$$$$$$$$$$$$$$$$$$$$$$$$$des$critères$(prédicats)$permeKant$de$les$iden;fier,$$$$$$$$$$$$$$$$$$$$$$$$$$$$des$aKributs$à$modifer$et$leurs$valeurs$
UPDATE Etudiant SET prenomEt = 'Chloé'!WHERE nomEt = 'Martin' AND prenomEt = 'Anne';!
$UPDATE$$SET$($$=$$[,$$$=$$])$$$$$$$$$$$$$$$$WHERE$($=$$[$AND$$=$])$$
$Démo$sous$MAMP$hKp://localhost:8888/phpMyAdmin/index.php?db=test$$
19
PhpMyAdmin$–$formulaire$Modif$
20
SQL!–!LMD!:!!Extrac8on!d’enregistrements!
Etudiant(carteNo [int], nomEt [string], prenomEt [string]) !
SélecLon/Extracion&$à$par;r$de$la$rela;on$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$et$des$critères$(prédicats)$permeKant$de$les$iden;fier$SELECT * FROM Etudiant WHERE nomEt = 'Martin’;!$SELECT$[*$|$DISCTINCT]$$[,]$FROM$$[,$]$$$$$$$$$$$$$$$$$$WHERE$($=$$[$AND$$=$])$$$$$$$$$$$$$$$$$$GROUP$BY$$[$,$]$$$$$$$$$$$$$$$$$$HAVING($=$$[$AND$$=$])$$$$$$$$$$$$$$$$$ORDER$BY$$[$,$]$$$
$Démo$dans$Excel$$$Démo$sous$MAMP$hKp://localhost:8888/phpMyAdmin/index.php?db=test$$
conditions de sélection sur les valeurs
conditions de sélection sur les groupements
21
PhpMyAdmin$?$SELECT$
22
SQL!sous!ACCESS!
• ACCESS$est$lié$à$msSQL$
$Afficher$les$requêtes$msSQL$
$noter$les$requêtes$msSQL$de$vos$requêtes$ACCESS$ $surligner$les$différences$e$syntaxe$avec$les$requêtes$mySQL$
23
Transfert!de!ACCESS!à!MySQL!
• Créer$les$tables$$– soit$sous$PHPMyAdmin,$$– soit$via$l’applica;on$MySQL$dans$le$terminal$– soit$en$branchant$ACCESS$sur$un$serveur$mySQL$
• Exporter$les$données$– soit$en$format$CSV$(Comma$Separated$Values)$– soit$en$msSQL$puis$en$corrigeant$les$différences$de$syntaxe$– soit$en$branchant$ACCESS$sur$un$serveur$mySQL$
hKp://www.convert?in.com/access?to?mysql?tutorial.htm$ hKp://;prof.fr/SitesWebDynamic/Techniques?swd/07_MySQL?et?connectPhp/
ImportExport?MySQL.html$
24
Exemple
25
Exemple&
$Abonne$(NoCarte,$Nom,$Prenom)$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$Livre$(Code,$Titre)$Exemplaire$(Code,$Numero,$AnAchat,$Etat,$PrixAchat)$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$Emprunts$(Code,$Numero,$Date,$NoCarte)$$
26
PhpMyAdmin$Créa;on$de$table$et$inser;on$d’enregistrements$
27
PhpMyAdmin$–$Formulaire$SQL$
28
Exemple$de$requêtes$mySQL$Créa;on$de$table$et$inser;on$d’enregistrements$
CREATE$TABLE$`Livres`$($$$`Code`$int(11)$NOT$NULL$AUTO_INCREMENT,$$$`Titre`$varchar(256)$NOT$NULL,$$$PRIMARY$KEY$(`Code`)$)$ENGINE=InnoDB$$DEFAULT$CHARSET=u|8$AUTO_INCREMENT=2$;$$
INSERT$INTO$`bibliotheque`.`Livres`$(`Code`,$`Titre`)$VALUES$(NULL,$'L''alchimiste');$
INSERT$INTO$`bibliotheque`.`Livres`$(`Code`,$`Titre`)$VALUES$(NULL,$'Les$fourmis'),$(NULL,$'Chouans');$
29
Formulaire$SQL$dans$PhpMyAdmin$Créa;on$de$table$et$inser;on$d’enregistrements$
30
Exemple$de$requêtes$mySQL$Créa;on$de$table$–$clé&double/triple…$
CREATE$TABLE$`Exemplaire`$($$$`Code`$int(11)$NOT$NULL,$$$`Numero`$mediumint(4)$NOT$NULL,$$$`AnAchat`$mediumint(4)$DEFAULT$NULL,$$$`Etat`$enum('TB','Moyen','Bon')$DEFAULT$NULL,$$$`PrixAchat`$mediumint(4)$DEFAULT$NULL,$$$PRIMARY$KEY$(`Code`,$`Numero`$)$)$ENGINE=InnoDB$DEFAULT$CHARSET=u|8;$$
31
Exemple$de$requêtes$mySQL$Créa;on$de$table$–$intégrité&référenLelle…$
CREATE$TABLE$`Exemplaire`$($$$`Code`$int(11)$NOT$NULL,$$$`Numero`$mediumint(4)$NOT$NULL,$$$`AnAchat`$mediumint(4)$DEFAULT$NULL,$$$`Etat`$enum('TB','Moyen','Bon')$DEFAULT$NULL,$$$`PrixAchat`$mediumint(4)$DEFAULT$NULL,$$$PRIMARY$KEY$(`Code`,$`Numero`$),$$$CONSTRAINT$`Exemplaire_Code_FK`$FOREIGN$KEY$(`Code`)$$$REFERENCES$`Livre`$(`Code`)$ON$DELETE$CASCADE$)$ENGINE=InnoDB$DEFAULT$CHARSET=u|8;$$
32
Exemple$de$requêtes$mySQL$Créa;on$de$table$–$intégrité&référenLelle…$
Ou,&créaLon&sans&la&contrainte,&CREATE$TABLE$`Exemplaire`$($$$`Code`$int(11)$NOT$NULL,$$$`Numero`$mediumint(4)$NOT$NULL,$$$`AnAchat`$mediumint(4)$DEFAULT$NULL,$$$`Etat`$enum('TB','Moyen','Bon')$DEFAULT$NULL,$$$`PrixAchat`$mediumint(4)$DEFAULT$NULL,$$$PRIMARY$KEY$(`Code`,`Numero`),$)$ENGINE=InnoDB$DEFAULT$CHARSET=u|8$;$
Puis&ajout&de&la&contrainte,&ALTER$TABLE$Exemplaire$ADD$FOREIGN$KEY$(Code)$$REFERENCES$Livre$(Code);$$
33
Exemple$de$requêtes$mySQL$Modifica;on$de$table$–$intégrité&référenLelle…$
Voir&la&structure&d’une&relaLon,&SHOW$CREATE$TABLE$Exemplaire;$
&&&
&&&
&Supprimer&une&contrainte&de&clé&étrangère,&ALTER$TABLE$`Exemplaire`$DROP$FOREIGN$KEY$`Exemplaire_ib_1`;$$
CREATE$TABLE$`Exemplaire`$($$$`Code`$int(11)$NOT$NULL,$$$`Numero`$mediumint(4)$NOT$NULL,$$$`AnAchat`$mediumint(4)$DEFAULT$NULL,$$$`Etat`$enum('TB','Moyen','Bon')$DEFAULT$NULL,$$$`PrixAchat`$mediumint(4)$DEFAULT$NULL,$$$PRIMARY$KEY$(`Code`,`Numero`),$$$CONSTRAINT$`Exemplaire_ib_1`$FOREIGN$KEY$(`Code`)$$$$$REFERENCES$`Livre`$(`Code`)$)$ENGINE=InnoDB$DEFAULT$CHARSET=u|8$;$
34
Liste&de&requêtes&
1. Liste$des$abonnés$(nom,$prenom)$?$2. Codes$des$livres$en$TB$état$?$3. Titres$des$livres$en$TB$état$?$4. Noms$des$personnes$ayant$emprunté$«$L’alchimiste$»$?$5. No$de$carte$de$abonnés$ayant$emprunté$tous$les$
livres$?$6. Nombre$d’exemplaire$par$livre$?$7. Prix$moyen$d’acaht$de$chaque$livre$?$(code,$;tre,$prix$
moyen)$
35
1.&Liste&des&abonnés&
$$$R1$=$$$$$$$$$$$$Nom,$Prenom$(Abonne)$=$Proj$(Abonne,$Nom,$Prenom)$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$=$$$SELECT$$`Nom`$,$`Prenom`$FROM$`Abonne`$
Π
36
2.&Codes&des&livres&en&TB&état&
$$$
R2$=$$$$Π$Nom,$Prenom$(σEtat='Bon'(Exemplaire))$$$$$$$$$=$Proj$($$Sel(Exemplaire,$Etat='Bon')$,$Code,$Numero)$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$=$$$SELECT$$`Code`$$FROM$`Exemplaire`$WHERE$`Etat`$=$'Bon'$
37
3.&Titres&des&livres&en&TB&état&
R1$=$codes$et$numéros$des$livres$en$TB$état$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$X$$$
R2$=$$$$ΠTitre(ΠNom,$Prenom$($σEtat='Bon'(Exemplaire)$)$X Livre$)$$=$Proj($Join`Livre`.`Code`$=`Exemplaire`$.`Code`$($$$$$$$$$$$$Proj$(Sel(Exemplaire,$Etat='Bon')$,$Code,$Numero),$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$Livre),$Titre)$…$
$$$$$=$$SELECT$`Titre`$$FROM$`Livre`,$(SELECT$$`Code`,$`Numero`$$$$$$$$$$$$FROM$`Exemplaire`$WHERE$`Etat`$=$'Bon')$$$$$$$$$$$WHERE$`Livre`.`Code`$=`Exemplaire`$.`Code`$$$$$PhpMyAdmin$ne$peut$faire$plusieurs$requêtes$mySQL$consécu;ves$
38
Autres outils pour MySQL que PhpMyAdmin
39
Autre&que&PhpMyAdmin&
• directement$ou$• MySQL$WorkBench$
40
MySQL&G&API&
41
MySQL&G&API&
42
MySQL&WorkBench&
43
MySQL&WorkBench&CréaLon&d’une&table&
44
MySQL&WorkBench&CréaLon&d’une&table&
45
MySQL&WorkBench&CréaLon&d’une&table&
46
MySQL&WorkBench&CréaLon&d’une&table&
47
MySQL&WorkBench&Reverse&Engineering&
48
MySQL&WorkBench&Reverse&Engineering&
49
MySQL&WorkBench&Reverse&Engineering&:&éditeur&de&schéma&
50
Requête&créant&un&alias&de&table&
51
Précisions sur les jointures
52
L’intégrité&différenLelle&en&MySQL&et&le&différents&types&de&jointure&
• La$jointure$est$un$filtre$sur$2$tables$sélec;onnant$les$enregistrements$joints$par$les$valeurs$de$leurs$clés$
• Parmi$les$types$de$jointure,$les$plus$u;les$sont$:$– Jointure$interne$(inner$join)$– Jointure$à&gauche$(leÉ$join)$– Jointure$à&droite$(right$join)$
• Démo$avec$MySQL$WorkBench$• Référence$:$hKps://sio20197.wordpress.com/3?sql/manipula;on?des?donnees/select?2/
from/jointures/types?de?jointures/$$
53
L’intégrité&différenLelle&en&MySQL&et&le&différents&types&de&jointure&
54
Jointure&interne&
mode$de$liaison$d’ACCESS$par$défaut.$$2$requêtes$mySQL$possibles$:$$SELECT$*$FROM$`Exemplaire`,$`Livre`$$WHERE$`Livre`.$`Code`$=$`Exemplaire`.$`Code`$;$$et$$SELECT$*$FROM$`Exemplaire`$INNER$JOIN$`Livre`$$WHERE$`Livre`.$`Code`$=$`Exemplaire`.$`Code`$;$$$$
55
Jointure&interne&
SELECT$*$FROM$`Exemplaire`,$`Livre`$$WHERE$`Livre`.$`Code`$=$`Exemplaire`.$`Code`$;$$$
SELECT$*$FROM$`Exemplaire`$INNER$JOIN$`Livre`$$WHERE$`Livre`.$`Code`$=$`Exemplaire`.$`Code`$;$$$$
56
Jointure&gauche&&
SELECT$*$FROM$`Exemplaire`$LEFT$JOIN$`Livre`$$WHERE$`Livre`.$`Code`$=$`Exemplaire`.$`Code`$;$$$
57
Jointure&droite&&
SELECT$*$FROM$`Exemplaire`$RIGHT$JOIN$`Livre`$$WHERE$`Livre`.$`Code`$=$`Exemplaire`.$`Code`$;$$$
58
Jointure&gauche&dans&ACCESS&
59
L’intégrité&différenLelle&en&MySQL&et&le&différents&types&de&jointure&
Contraintes$d’intégrité$référen;elles$:$$
• Peut?on?insérer$une$ligne$dans$la$table$des$emprunts$pour$mémoriser$l’emprunt$d’un$nouveau$livre$non$encore$défini$?$$
• Peut?on$supprimer$un$livre$s’il$a$déjà$été$emprunté$?$$$$
NON,$si$les$dépendances$entre$clés$primaires$et$étrangères$ont$été$bien$déclarées.$$En$effet,$on$perd$alors$la$référence$=>$la$base$de$données$ne$serait$alors$plus$intègre$$
• Peut?on$supprimer$l’emprunt$d’un$livre$sans$avoir$du$supprimer$le$livre$aupréalable$?$
$
Démo$avec$MySQL$WorkBench$$
60
Précisions sur les groupements
61
Opéra;ons$de$calcul$• extension$aux$opérateurs$de$base$$• ne$peuvent$pas$être$exprimés$à$l’aide$de$ceux?ci$$Exemple$:$
Compte&=$nombre$de$lignes$d’une$rela;on$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$qui$ont$une$même$valeur$d’aKribut$en$commun.$$T(=$CompteX1,...,Xn((R)$$$$$ou$$$$$T(=$CountX1,...,Xn((R)$$$$$$$$$$$$$$$$$$X1,...,Xn$étant$les$aKributs$de$regroupement$$&&
&&&
Somme&=$somme$cumulée$des$valeurs$d’un$aKribut$Y$$$$$$$$$pour$chacune$des$différentes$valeurs$des$aKributs$de$groupement$X1,...,Xn( S(=$SommeX1,,..,Xn((R,$Y)$$$$$ou$$$$$S(=$Sum(X1,,..,Xn((R,$Y)$$$
$&
CompteX1,...,Xn !
T !
R!
R
A B C a n 17 b o 14 c n 9 d p 13 e m 20 f m 10
CompteB (R) B Compte n 2 m 2 o 1 p 1 $$ $$
Compte (R) Compte 6
62
Agrégats$ou$$Groupements$
non !!!
63
Quelques requêtes spéciales en MySQL
64
Manuel$officiel$mySQL$
voir http://dev.mysql.com/doc/refman/4.1/en/show-columns.html!
65
SHOW$$COLUMNS$FROM$[ma_table]$versus$$$$$$$$$$$$$$$$$$$$$$$$$$
SELECT$*$FROM$INFORMATION_SCHEMA.COLUMNS$$WHERE$`TABLE_NAME`$=$'[ma_table]'$
$
66
SHOW$$COLUMNS$FROM$[ma_table]$versus$$$$$$$$$$$$$$$$$$$$$$$$$$
SELECT$`COLUMN_TYPE`$FROM$INFORMATION_SCHEMA.COLUMNS$$
WHERE$`TABLE_NAME`$=$'[ma_table]’$AND$`COLUMN_TYPE`$LIKE$'enum%'$$
$
67
Branchement d’ACCESS sur MySQL
68
Branchement!d’ACCESS!à!MySQL!via!un!connecteur!
$hKp://ledzeppii.developpez.com/odbc?access/$$$
69
Références
70
Liens!pra8ques!
• hKp://chamilo2.grenet.fr/inp/courses/PAGORALP1FM00105/index.php$$• hKp://;prof.fr/SGBasesDonnees/$$• hKp://;prof.fr/SGBasesDonnees/APP?BDprodfourn/$$• hKp://cyberzoide.developpez.com/php4/mysql/$ $$
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$cours$en$français$sur$mySQL$par$Hugo$ETIEVANT$• hKp://dev.mysql.com/doc/refman/5.6/en/index.html$$• hKp://dev.mysql.com/doc/refman/5.7/en/create?table.html$$• hKp://localhost:8888/phpMyAdmin/index.php$• hKp://;prof.fr/SitesWebDynamic/Techniques?swd/07_MySQL?et?
connectPhp/ImportExport?MySQL.html$• hKp://www.convert?in.com/access?to?mysql?tutorial.htm$• hKp://ledzeppii.developpez.com/odbc?access/$