Différences entre versions de « MySQL »
De Didaquest
Aller à la navigationAller à la recherche(17 versions intermédiaires par le même utilisateur non affichées) | |||
Ligne 4 : | Ligne 4 : | ||
= Relation entre table = | = Relation entre table = | ||
− | * Tuto simple : https://www.bonbache.fr/relations-entre-les-tables-d-une-base-mysql-382.html | + | * Realtion entre table : Tuto simple : https://www.bonbache.fr/relations-entre-les-tables-d-une-base-mysql-382.html |
+ | * Type de relation : https://openclassrooms.com/fr/courses/4449026-initiez-vous-a-lalgebre-relationnelle-avec-le-langage-sql/4449033-decouvrez-le-concept-de-relation | ||
+ | * Table intermediaire - classe d'association - clé primaire composée de clés secondaires: https://openclassrooms.com/fr/courses/4055451-modelisez-et-implementez-une-base-de-donnees-relationnelle-avec-uml/4457718-mettez-en-oeuvre-les-differents-types-de-relations-a-laide-des-cles-etrangeres | ||
+ | |||
+ | - Pour créer une clés primaire composés de clés secondaire : Lorsque tu crées la table, tu coche la case clé primaire sur tous les champs concernés et cela fait une clé primaire composée. | ||
+ | - Si la table est déjà crée avec une clé primaire, tu supprimes la clé primaire et tu recoche les cases qui vont bien. | ||
+ | |||
+ | * '''Exemple via code''': [https://dba.stackovernet.com/fr/q/22593] | ||
+ | '''Short version''': | ||
+ | CREATE TABLE Relation | ||
+ | ( stu_id INT NOT NULL REFERENCES Student, | ||
+ | par_id INT NOT NULL REFERENCES Parent, | ||
+ | PRIMARY KEY (stu_id, par_id) | ||
+ | ) ; | ||
+ | |||
+ | '''Long version''' (en donnant un autre nom à la table car le nom relation reste vague | ||
+ | CREATE TABLE Guardian | ||
+ | ( -- columns | ||
+ | student_id INT NOT NULL, | ||
+ | parent_id INT NOT NULL, | ||
+ | -- constraints | ||
+ | CONSTRAINT Guardian_PK -- the name of the PK constraint | ||
+ | PRIMARY KEY (student_id, parent_id), | ||
+ | |||
+ | CONSTRAINT Student_Guardian_FK -- the name of the FK constraint | ||
+ | FOREIGN KEY (student_id) | ||
+ | REFERENCES Student (student_id) | ||
+ | ON UPDATE CASCADE -- the actions of the FK | ||
+ | ON DELETE RESTRICT, | ||
+ | CONSTRAINT Parent_Guardian_FK -- second FK | ||
+ | FOREIGN KEY (parent_id) | ||
+ | REFERENCES Parent (parent_id) | ||
+ | ON UPDATE CASCADE | ||
+ | ON DELETE RESTRICT | ||
+ | ) ; | ||
+ | |||
= Catégories et sous-sous...catégories = | = Catégories et sous-sous...catégories = | ||
: '''En Français | : '''En Français | ||
Ligne 13 : | Ligne 48 : | ||
* https://www.coinduwebmaster.com/menu-arborescent-fonction-recursive-php/89/ | * https://www.coinduwebmaster.com/menu-arborescent-fonction-recursive-php/89/ | ||
− | Notre préférence: | + | Notre préférence: (Représentation intervallaire = MPTT en anglais (Modified Preorder Tree Traversal)) |
* https://sqlpro.developpez.com/cours/arborescence/ | * https://sqlpro.developpez.com/cours/arborescence/ | ||
+ | * https://zestedesavoir.com/tutoriels/250/la-representation-intervallaire/ | ||
+ | * http://www.finalclap.com/faq/252-representation-invervallaire | ||
* https://jean.traulle.net/2015/02/representation-intervallaire/ | * https://jean.traulle.net/2015/02/representation-intervallaire/ | ||
* https://blog.developpez.com/sqlpro/p11925/langage-sql-norme/tri-combine-dans-un-arbre-intervallaire | * https://blog.developpez.com/sqlpro/p11925/langage-sql-norme/tri-combine-dans-un-arbre-intervallaire | ||
Ligne 25 : | Ligne 62 : | ||
::- '''En javascript''' | ::- '''En javascript''' | ||
::::* sous menu caché avec du javascript: https://www.coinduwebmaster.com/sous-menus-caches/60/ | ::::* sous menu caché avec du javascript: https://www.coinduwebmaster.com/sous-menus-caches/60/ | ||
+ | |||
+ | = Jointures = | ||
+ | * Très explicite avec exemples et images : [https://sql.sh/cours/jointures] | ||
+ | * Avec plus de détails : [https://www.supinfo.com/cours/1ORC/chapitres/04-recuperer-donnees-depuis-plusieurs-tables] | ||
+ | * https://sqlpro.developpez.com/cours/sqlaz/jointures/ | ||
+ | * Un bon exemple discussion et résolution: https://forum.phpfrance.com/php-debutant/problemes-jointures-php-sql-t270521-15.html | ||
+ | |||
+ | = Manipulation via PHP = | ||
+ | * Importer - exporter via mysql : https://docs.phpmyadmin.net/fr/latest/import_export.html | ||
+ | * '''Editer - Ajouter - détruire données''' : Live Table Add Edit Delete using Ajax Jquery in PHP Mysql [https://www.webslesson.info/2016/02/live-table-add-edit-delete-using-ajax-jquery-in-php-mysql.html] | ||
+ | |||
+ | = Mysql - csv = | ||
+ | * http://www.chicoree.fr/w/Importer_des_donn%C3%A9es_dans_une_base_MySQL | ||
+ | |||
+ | Une astuce utiliser des fois le convertisseur pour importer les sql au lieu des csv quand l'importation cause des problèmes | ||
+ | (surtout dans le cas de clés étrangères) http://www.convertcsv.com/csv-to-sql.htm | ||
+ | |||
+ | = Références = | ||
+ | * https://blog.developpez.com/sqlpro/ | ||
+ | |||
[[Category: Mysql]][[Category: Sql]] [[Category: SGBD]] [[Category: Bases de données]] | [[Category: Mysql]][[Category: Sql]] [[Category: SGBD]] [[Category: Bases de données]] | ||
[[Category: Informatique]] | [[Category: Informatique]] |
Version actuelle datée du 11 octobre 2019 à 20:39
- site officiel: https://www.mysql.com/
- Logiciel pour Conception et gestion visuelle des bases de données (architecture, relation, design...): https://dev.mysql.com/downloads/workbench/
- Cours et tutoriels sur le langage SQL: https://sql.sh/
Relation entre table
- Realtion entre table : Tuto simple : https://www.bonbache.fr/relations-entre-les-tables-d-une-base-mysql-382.html
- Type de relation : https://openclassrooms.com/fr/courses/4449026-initiez-vous-a-lalgebre-relationnelle-avec-le-langage-sql/4449033-decouvrez-le-concept-de-relation
- Table intermediaire - classe d'association - clé primaire composée de clés secondaires: https://openclassrooms.com/fr/courses/4055451-modelisez-et-implementez-une-base-de-donnees-relationnelle-avec-uml/4457718-mettez-en-oeuvre-les-differents-types-de-relations-a-laide-des-cles-etrangeres
- Pour créer une clés primaire composés de clés secondaire : Lorsque tu crées la table, tu coche la case clé primaire sur tous les champs concernés et cela fait une clé primaire composée. - Si la table est déjà crée avec une clé primaire, tu supprimes la clé primaire et tu recoche les cases qui vont bien.
- Exemple via code: [1]
Short version: CREATE TABLE Relation ( stu_id INT NOT NULL REFERENCES Student, par_id INT NOT NULL REFERENCES Parent, PRIMARY KEY (stu_id, par_id) ) ;
Long version (en donnant un autre nom à la table car le nom relation reste vague CREATE TABLE Guardian ( -- columns student_id INT NOT NULL, parent_id INT NOT NULL, -- constraints CONSTRAINT Guardian_PK -- the name of the PK constraint PRIMARY KEY (student_id, parent_id),
CONSTRAINT Student_Guardian_FK -- the name of the FK constraint FOREIGN KEY (student_id) REFERENCES Student (student_id) ON UPDATE CASCADE -- the actions of the FK ON DELETE RESTRICT, CONSTRAINT Parent_Guardian_FK -- second FK FOREIGN KEY (parent_id) REFERENCES Parent (parent_id) ON UPDATE CASCADE ON DELETE RESTRICT ) ;
Catégories et sous-sous...catégories
- En Français
- https://www.developpez.net/forums/d502326/bases-donnees/mysql/requetes/creer-categories-sous-sous-categories/
- avec fichiers sources simples : http://nyrodev.info/fr/posts/127/PHP-MySQL-Mettre-en-place-des-categories-sur-differents-niveaux
- avec variable globale : https://www.developpez.net/forums/d1580805/php/php-base-donnees/php-mysql/affichage-categories-sous-categories/
- https://www.webrankinfo.com/forum/t/comment-programmeriez-vous-un-menu-avec-sous-categories-infinie.190493/
- https://www.coinduwebmaster.com/menu-arborescent-fonction-recursive-php/89/
Notre préférence: (Représentation intervallaire = MPTT en anglais (Modified Preorder Tree Traversal)) * https://sqlpro.developpez.com/cours/arborescence/ * https://zestedesavoir.com/tutoriels/250/la-representation-intervallaire/ * http://www.finalclap.com/faq/252-representation-invervallaire * https://jean.traulle.net/2015/02/representation-intervallaire/ * https://blog.developpez.com/sqlpro/p11925/langage-sql-norme/tri-combine-dans-un-arbre-intervallaire
- En Anglais
- https://stackoverflow.com/questions/30563382/fetch-subcategory-in-fetched-category
- https://stackoverflow.com/questions/20215744/how-to-create-a-mysql-hierarchical-recursive-query
- Avec d'autres langage:
- - En javascript
- sous menu caché avec du javascript: https://www.coinduwebmaster.com/sous-menus-caches/60/
- - En javascript
Jointures
- Très explicite avec exemples et images : [2]
- Avec plus de détails : [3]
- https://sqlpro.developpez.com/cours/sqlaz/jointures/
- Un bon exemple discussion et résolution: https://forum.phpfrance.com/php-debutant/problemes-jointures-php-sql-t270521-15.html
Manipulation via PHP
- Importer - exporter via mysql : https://docs.phpmyadmin.net/fr/latest/import_export.html
- Editer - Ajouter - détruire données : Live Table Add Edit Delete using Ajax Jquery in PHP Mysql [4]
Mysql - csv
Une astuce utiliser des fois le convertisseur pour importer les sql au lieu des csv quand l'importation cause des problèmes (surtout dans le cas de clés étrangères) http://www.convertcsv.com/csv-to-sql.htm