Connexion à plusieurs base de donnée
Résolu/Fermé
A voir également:
- Connexion à plusieurs base de donnée
- Gmail connexion - Guide
- Hotmail connexion - Guide
- Formules excel de base - Guide
- Facebook connexion - Guide
- Base de registre - Guide
1 réponse
Utilisateur anonyme
11 sept. 2014 à 10:01
11 sept. 2014 à 10:01
salut,
ta question n'a pas vraiment de sens du fait que ton connecteur se limite à ta base de données. Les interactions avec les tables ne se font que lorsque tu requêtes dessus ...
Peu plutot un problème dans ton code ? que se passe t'il exactement?
naga
ta question n'a pas vraiment de sens du fait que ton connecteur se limite à ta base de données. Les interactions avec les tables ne se font que lorsque tu requêtes dessus ...
Peu plutot un problème dans ton code ? que se passe t'il exactement?
naga
11 sept. 2014 à 10:03
En effectuant donc mysql_select_db($db) (4 fois) cela ne changera rien au chargement de la page sauf en cas de requête ?
11 sept. 2014 à 10:57
En gros, ton connecteur est simplement un lien avec ta base. Lors du requêtage, celui ci s'effectue sur le serveur puis le résultat est envoyé au client (c'est à dire que jamais tu verra les trames de select puis leur résultats transiter, tu récupère les résultats, les stocks/affiche ou ce que tu veux puis tu les transmets au client.
Par contre avoir 4 connecteurs est très etranges du fait que ca soit la même base qui contienne tes tables ... un seul connecteur est suffisant, même si tu requête N tables. Il y aurai probablement des choses à (re) voir à ce niveau là, mais pour ca il me faudrai ton code pour que je puisse te conseiller/corriger.
naga
Modifié par Doy2 le 11/09/2014 à 12:20
Ci-dessous le code utiliser pour la connexion
La fonction Connect,elle est appeler à chaque début de page, pour les autres, juste quand besoin
11 sept. 2014 à 12:23
- le SGBD (le serveur mysql)
- les bases de données contenus dans le SGBD
- les tables contenus dans les bases de données
Seule la connexion au SGBD a un délai significatif, le fait de changer de base de données (avec mysql_select_db par exemple) n'as qu'un aucun impact minime sur les performances.
Comme indiqué par nagashima, si tes 4 tables sont bien contenus dans la même base de données, un seul mysql_select_db suffit.
Si tes tables sont effectivement dans des bases différentes, tu peux aussi créer tes requêtes en spécifiant le nom de la base devant le nom de la table (évitant ainsi l'utilisation de plusieurs mysql_select_db). Par exemple :
Mon SGBD contient deux bases :
- base 1 : contient table11 et table12
- base 2 : contient table21 et table 22
On peut écrire une requête directement comme ceci :
Modifié par nagashima le 11/09/2014 à 13:26
Pour faire court, disons que tu as 4 bases de données sur un même serveur (pour un même service mySQL). Tu auras donc un seul connecteur, ayant une base par défaut. Pour requêter sur une autre base, il suffit de l'indiquer avant le nom de la table, avec un "." (point) entre les deux.
Par exemple, on a :
base1 et base2 étant sur le même serveur.
J'aurai donc un connecteur :
J'ai donc paramétrer ma BASE1, me permettant d'effectuer des requêtes sur table1 et table2 sans préciser la base. Par exemple je pourrai faire :
si je souhaite effectuer une requête sur la table3, il me suffit de faire :
C'est à dire que le select_db permet juste de ne pas à avoir à toujours préciser la base. Dans le cas général les utilisateurs n'utiliseront qu'une base contenant n table => de cette manière il n'auront qu'à préciser les table (je pense que c'est ton cas).
Ensuite, il est je trouve plus simple et plus propre que tu ais un fichier gérant ta connexion, et que chaque page en ayant besoin l'incluent. Mais c'est juste un avis perso ^^