Outils pour utilisateurs

Outils du site


lang:sql

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
lang:sql [2016/11/12 22:05] – Complétion de "Requête SELECT" rootlang:sql [2020/04/27 10:26] (Version actuelle) – maff -> html root
Ligne 1: Ligne 1:
-Soit la base de donnée :+=====Administration===== 
 +Ajout un nouvel utilisateur ''user'' ayant toutes les autorisations sur toutes les tables de la base de donnée ''datab'' avec le mot de passe ''password''  
 +<code sql> 
 +GRANT ALL PRIVILEGES ON datab.* TO user@localhost IDENTIFIED BY 'password'  
 +</code>
  
 +=====Requête SELECT=====
 +Soit la base de donnée :
     * Film (__id__, titre, annee, //id_realisateur//, //code_pays//)     * Film (__id__, titre, annee, //id_realisateur//, //code_pays//)
     * Artiste (__id__, nom, prenom)     * Artiste (__id__, nom, prenom)
     * Pays (__code__, nom, langue)     * Pays (__code__, nom, langue)
     * Role (__id_film__, __id_acteur__, nom_role)     * Role (__id_film__, __id_acteur__, nom_role)
- 
-=====Requête SELECT===== 
 ====Base==== ====Base====
 Renvoie les colonnes d'un. table. Renvoie les colonnes d'un. table.
Ligne 77: Ligne 81:
     SELECT id FROM Artiste WHERE nom LIKE 'Eastwood' AND prenom LIKE 'Clint'));     SELECT id FROM Artiste WHERE nom LIKE 'Eastwood' AND prenom LIKE 'Clint'));
 </code> </code>
 +
 +=====Modifier une table existante=====
 +====Changer une colonne faisant office de clé étranger sur une autre table====
 +Intérêt : ajouter l'attribut Auto-Incrément qui a été oublié à une clé primaire.
 +
 +Bien mettre le même type de donnée (ici ''INT(11)'') dans l%%'%%''ID'' de la table ''artiste'' et les colonnes ''id_realisateur'' et ''id_acteur'' des tables ''Film'' et ''Role''.
 +<code sql>
 +LOCK TABLES Artiste WRITE, Film WRITE, Role WRITE;
 +
 +ALTER TABLE Film DROP FOREIGN KEY Film_ibfk_1;
 +ALTER TABLE Role DROP FOREIGN KEY Role_ibfk_2;
 +
 +ALTER TABLE Artiste MODIFY id INT(11) AUTO_INCREMENT;
 +
 +ALTER TABLE Film ADD CONSTRAINT Film_ibfk_1 FOREIGN KEY (id_realisateur) REFERENCES Artiste(id) ON DELETE RESTRICT ON UPDATE RESTRICT;
 +ALTER TABLE Role ADD CONSTRAINT Role_ibfk_2 FOREIGN KEY (id_acteur) REFERENCES Artiste(id) ON DELETE RESTRICT ON UPDATE RESTRICT;
 +
 +UNLOCK TABLES;</code>
 +
 +[[http://stackoverflow.com/questions/13606469/cannot-change-column-used-in-a-foreign-key-constraint|Cannot change column used in a foreign key constraint]] {{ :lang:sql:mysql_-_cannot_change_column_used_in_a_foreign_key_constraint_-_stack_overflow_2020-04-27_10_25_58_am_.html |Archive du 28/11/2012 le 27/04/2020}}
lang/sql.1478984744.txt.gz · Dernière modification : 2016/11/12 22:05 de root