|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() hautselfes@msn.com hautselfes@msn.com Inscription : février 2011 Messages : 12 ![]() |
Bonjour,
Je suis en train d'essayer de comprendre l’utilisé et le fonctionnement de ce moteur InnoDB mais rien à faire, je ne comprend pas... Je dois démontrer son utilité....comment ? Comment faire en pratique pour voir une différence ? Merci de votre aide |
|
|
00
|
|
|
#2 |
|
Membre Expert
![]() Inscription : août 2008 Messages : 1 271 ![]() |
J'imagine que tu veux comparer InnoDB avec MyIsam. C'est simple avec InnoDB tu peux gérer :
1/ L'intégrité référentielle, cf les contraintes clés étrangères 2/ Les transactions, cf une succession d'opérations insert update delete qui doivent être toutes valides (commit) ou toutes invalidées (rollback) en cas de problèmes/annomalies Il y a surement plein d'autres avantages à InnoDB comparé à MyIsam, mais ces 2 là sont vraiment primordiales. D'un point de vue assez critique je dirais que MyIsam est un jouet (mais qui peut avoir son utilité) et InnoDB permet des développements plus "professionnels" As tu lu le tutoriel du site sur InnoDB ? |
|
|
00
|
|
|
#3 |
![]() ![]() ![]() Frédéric BROUARDExpert SGBDR & SQL Inscription : mai 2002 Messages : 10 953 ![]() |
MySQL... développement professionnel ? Laissez moi rire !!!
A lire sur les inepties du pseudo SGBDR qu'est MySQL : http://blog.developpez.com/sqlpro/p9...udre-aux-yeux/ A +
__________________
Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL Site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/ Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp. Blog SQL, SQL Server, modélisation données : http://blog.developpez.com/sqlpro http://www.sqlspot.com : modélisation, conseils, audit, optimisation, formation * * * * * Enseignant CNAM PACA - ISEN Toulon - CESI Aix en Provence * * * * * |
|
01
|
|
|
#4 |
|
Invité de passage
![]() hautselfes@msn.com hautselfes@msn.com Inscription : février 2011 Messages : 12 ![]() |
Merci bien j'ai fait quelques tests assez concluant grâce au tutoriel
Cependant je n'arrive pas la commande ON DELETE SET DEFAULT... Quelle est l'erreur de syntaxe ? Merci Code :
ALTER TABLE T_Pull ADD FOREIGN KEY (FK_Couleur) REFERENCES T_Couleur ( ID_Couleur) ON DELETE SET DEFAULT ='1' |
|
|
00
|
|
|
#5 |
![]() ![]() ![]() Frédéric BROUARDExpert SGBDR & SQL Inscription : mai 2002 Messages : 10 953 ![]() |
Il n'y en as pas, comme je vous l'ais dit dans mon pots précédent, MySQL est un SGBRD (hum.. hum...) très limité. ON DELETE SET DEFAULT n'est tout simplement pas implémenté !
C'est pervers, car le parseur ne dit rien, car la syntaxe est validé, mais MySQL ne fait rien... ! A +
__________________
Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL Site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/ Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp. Blog SQL, SQL Server, modélisation données : http://blog.developpez.com/sqlpro http://www.sqlspot.com : modélisation, conseils, audit, optimisation, formation * * * * * Enseignant CNAM PACA - ISEN Toulon - CESI Aix en Provence * * * * * |
|
00
|
|
|
#6 | ||
|
Invité de passage
![]() hautselfes@msn.com hautselfes@msn.com Inscription : février 2011 Messages : 12 ![]() |
Ahhh merci bien
(encore une autre question pendant que je suis j'exécute la requête suivante: Code :
après je veux tester qu'elle fonctionne bien en faisant: Code :
UPDATE T_Couleur SET ID_Couleur =20 WHERE ID_Couleur = 1 pouvez-vous m'aider ? Merci encore
|
||
|
|
00
|
|
|
#7 |
![]() ![]() ![]() Frédéric BROUARDExpert SGBDR & SQL Inscription : mai 2002 Messages : 10 953 ![]() |
1) message d'erreur ?
2) version de MySQL ?? 3) jeu d'essai ??? A +
__________________
Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL Site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/ Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp. Blog SQL, SQL Server, modélisation données : http://blog.developpez.com/sqlpro http://www.sqlspot.com : modélisation, conseils, audit, optimisation, formation * * * * * Enseignant CNAM PACA - ISEN Toulon - CESI Aix en Provence * * * * * |
|
00
|
|
|
#8 | |
|
Invité de passage
![]() hautselfes@msn.com hautselfes@msn.com Inscription : février 2011 Messages : 12 ![]() |
J'utilise EasyPHP pour mes tests
voic le message d'erreur Citation:
Les pulls ont tous une couleur (relié par FK une T_pull.FK_Couleur qui pointe sur T_Couleur.ID_Couleur) |
|
|
|
00
|
|
|
#9 | ||
|
Invité de passage
![]() hautselfes@msn.com hautselfes@msn.com Inscription : février 2011 Messages : 12 ![]() |
Je viens de faire un test:
Au lieu de lancé la requête alter table, j'insère mon update dans ma création de table comme suit: Code :
Code :
UPDATE T_Couleur SET ID_Couleur =20 WHERE ID_Couleur = 1 Mais j'aimerai bien réussi ma requête à l'aide de la commande Alter Table....est-ce possible ? (je vous le remet..) Code :
ALTER TABLE T_Pull ADD FOREIGN KEY (FK_Couleur) REFERENCES T_Couleur(ID_Couleur) ON UPDATE CASCADE; |
||
|
|
00
|
|
|
#10 |
![]() ![]() |
Le message d'erreur que tu as rencontré signifie que MySQL a trouvé au moins une ligne où la valeur de la colonne portant la clé étrangère n'a pas de correspondance dans la colonne de référence.
Quand tu ajoutes une clé étrangère à une table déjà remplie, il faut d'abord s'assurer que la colonne clé étrangère ne comprend que des valeurs respectant la contrainte de clé étrangère. Par contre quand tu crées une table, par définition elle est vide donc pas de problème pour créer la clé étrangère.
__________________
Philippe Leménager. Ingénieur d'étude à l'École Nationale de Formation Agronomique. Mon blog sur la conception des BDD, le langage SQL, le PHP avec Zend Framework... « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau) À la maison comme au bureau, j'utilise Mandriva Linux ou Mageïa ! Soutenons l'industrie logicielle française ! Linuxiens, comptez-vous ! |
|
00
|
Copyright © 2000-2012 - www.developpez.com