J'ai une table myisam et une table innodb. L'innodb a un index sur une clé étrangère de myisam. MySQL peut-il utiliser cet index lors de l'exécution de jointures?MySQL peut-il utiliser des index sur 2 moteurs de stockage différents?
Répondre
Les requêtes qui rejoignent des tables à partir de plusieurs moteurs de stockage peuvent utiliser des index provenant de n'importe quelle table.
Notez toutefois que MyISAM ne prend pas en charge les clés étrangères et que vous ne pouvez pas créer de clé étrangère ciblant une table MyISAM. Voir the MySQL manual pour plus de détails sur les clés étrangères.
Oui, c'est possible. La plupart des jointures seront implémentées en effectuant une sélection normale à partir d'une table (espérons-le, une recherche de clé ou une analyse de plage), puis en recherchant la clé de jointure sur l'autre table. Cette seconde recherche utilisera un index approprié sur l'autre table (à condition qu'un tel index existe et que l'optimiseur décide que c'est une bonne idée de l'utiliser).
L'interface du moteur de stockage MySQL permet au serveur d'utiliser des index de différents moteurs dans la même requête.
L'existence ou non d'une contrainte de clé étrangère est sans importance pour les sélections - elle utilisera de toute façon des index appropriés.
- 1. Comment choisissez-vous les moteurs de stockage pour Oracle?
- 2. Synchronisation des index Lucene sur 2 serveurs d'applications
- 3. MySQL sur Windows: Utilisation de SHA-2
- 4. index de plage mysql
- 5. IE6 Z-Index Différence entre 2 serveurs
- 6. Question MySQL: Index sur les colonnes!
- 7. mySQL: plusieurs COUNT() basés sur des critères différents
- 8. Conception de MySQL Unique Index
- 9. MySQL ignore mon index
- 10. Comment utiliser sur le même serveur Apache2 2 différents certificats en utilisant VirtualHost?
- 11. MySql Index Facteur de remplissage?
- 12. Distinct sur 2 champs différents en même temps
- 13. Combiner 2 comptes avec différents où sur la même table
- 14. Problème avec LoadVars.sendAndLoad dans Actionscript 2 sur différents ordinateurs
- 15. Meilleure façon de gérer le stockage/affichage des dates dans différents fuseaux horaires en PHP?
- 16. Stockage de très grands entiers dans MySQL
- 17. Choisir les champs dans un index multichamp sur MySQL
- 18. Mysql n'utilise pas mes index
- 19. Stockage d'une image dans MySQL
- 20. MySQL Stockage des données "génériques" (peut être très long ou très court)
- 21. Comment utiliser plusieurs moteurs de vue dans l'application ASP.NET MVC
- 22. Comparez les 2 schémas de base de données sur Mysql
- 23. Stockage de photos Quandry
- 24. MySQL Bit Data Type Espace de stockage
- 25. Sélectionnez Requête sur 2 tables, sur différents serveurs de base de données
- 26. SVN diff à travers 2 référentiels différents
- 27. Comment vérifier entre 2 tableaux d'objets différents?
- 28. struts 2: utiliser plusieurs ressources de message sur jsp
- 29. PHP MySql Stockage des données pendant 24 heures
- 30. Stockage des emplacements d'images avec MySQL et PHP
Oui, je sais. C'est une clé étrangère "conceptuelle" –