Grouper les tables SQL comme Freeglobes
15 messages
• Page 1 sur 1
-

Seraph - WRInaute occasionnel

- Messages: 405
- Inscription: 2 Avr 2006
Grouper les tables SQL comme Freeglobes
Bonjour,
J'aimerai savoir comment faire pour regrouper des tables dans phpMyAdmin à la manière de Freeglobes, en ajoutant un préfixe pour créer une sorte d'arborescence :
J'ai une base de données qui me sert pour plusieurs sites et j'aimerai bien pouvoir regrouper les tables par site.
Je suis chez OVH, au cas ou ça jouerait.
Merci à vous !
J'aimerai savoir comment faire pour regrouper des tables dans phpMyAdmin à la manière de Freeglobes, en ajoutant un préfixe pour créer une sorte d'arborescence :
J'ai une base de données qui me sert pour plusieurs sites et j'aimerai bien pouvoir regrouper les tables par site.
Je suis chez OVH, au cas ou ça jouerait.
Merci à vous !
-

zeb - WRInaute accro

- Messages: 4556
- Inscription: 5 Déc 2004
C'est une histoire de nomage de tes tables, c'est relativement simple a faire puisqu'il suffit de les renommer.
Seulement c'est bien jolie mais il faut modifier toutes les requêtes qui sont passées dans tes scripts car le nom des tables y est forcement mentionné.
Pour avoir mis en place un truc du genre il n'y a pas longtemps, voici comment je m'y suis pris :
1/ j'ai défini dans le fichier de config du CMS une variable qui se nome $prefix.
2/ dans l'IDE j'ai recherché sur l'ensemble des scripts du CMS chaque table grâce a leur nom.
3/ pour chaque apparition, dans mes script, du nom de la table j'ai modifié le script pour obtenir des requêtes du genre :
$sql = "SELECT * FROM ${prefix}matable;"; qui tiennent compte de la variable prefix.
4/ j'ai revisité l'ensemble du site pour voir si j'avais rien oublié.
C'est minutieux et chiant a faire mais ça rend de grand services quand tu dois faire cohabiter plusieurs sites sur une même base.
Il est préférable de penser a cela au moment de la définition du cahier des charges car faire le travail en aval est beaucoup plus long que de la gérer au moment du codage du site.
Seulement c'est bien jolie mais il faut modifier toutes les requêtes qui sont passées dans tes scripts car le nom des tables y est forcement mentionné.
Pour avoir mis en place un truc du genre il n'y a pas longtemps, voici comment je m'y suis pris :
1/ j'ai défini dans le fichier de config du CMS une variable qui se nome $prefix.
2/ dans l'IDE j'ai recherché sur l'ensemble des scripts du CMS chaque table grâce a leur nom.
3/ pour chaque apparition, dans mes script, du nom de la table j'ai modifié le script pour obtenir des requêtes du genre :
$sql = "SELECT * FROM ${prefix}matable;"; qui tiennent compte de la variable prefix.
4/ j'ai revisité l'ensemble du site pour voir si j'avais rien oublié.
C'est minutieux et chiant a faire mais ça rend de grand services quand tu dois faire cohabiter plusieurs sites sur une même base.
Il est préférable de penser a cela au moment de la définition du cahier des charges car faire le travail en aval est beaucoup plus long que de la gérer au moment du codage du site.
-

Seraph - WRInaute occasionnel

- Messages: 405
- Inscription: 2 Avr 2006
En fait j'ai préfixé et modifié mes scripts déjà, mais les tables ne se regroupent pas en arborescences (avec le + qui permet de les développer sur le coté).
C'est une question de nombre de tables préfixées, genre si y'a plus de dix tables commençant par "truc_" ça créé automatiquement cette arborescence ou y'a une manip' à faire dans phpMyAdmin ?
C'est une question de nombre de tables préfixées, genre si y'a plus de dix tables commençant par "truc_" ça créé automatiquement cette arborescence ou y'a une manip' à faire dans phpMyAdmin ?
-

zeb - WRInaute accro

- Messages: 4556
- Inscription: 5 Déc 2004
Seraph a écrit:En fait j'ai préfixé et modifié mes scripts déjà, mais les tables ne se regroupent pas en arborescences (avec le + qui permet de les développer sur le coté).
Désolé j'avais pas bien compris ta question, si c'est du '+' présent dans PHPMA dont tu parle, je ne l'ai jamais vue, j'en déduis donc que je travaille pas avec les mêmes version. J'ai des sites chez 3/ 4 hébergeurs différents mais pas chez OVH sorry ...
- oxado
- Nouveau WRInaute

- Messages: 35
- Inscription: 24 Nov 2005
Seraph a écrit:En fait j'ai préfixé et modifié mes scripts déjà, mais les tables ne se regroupent pas en arborescences (avec le + qui permet de les développer sur le coté).
C'est une question de nombre de tables préfixées, genre si y'a plus de dix tables commençant par "truc_" ça créé automatiquement cette arborescence ou y'a une manip' à faire dans phpMyAdmin ?
Ce ne serait pas une histoire de namespaces? Je ne sais même pas si ça existe dans mysql, ceci dit...
Jacques.
-

webmasterlamogere - WRInaute passionné

- Messages: 1874
- Inscription: 17 Déc 2006
j'ai testé et il semble que ce soit le double _ qui fasse ça
-

Bool - WRInaute passionné

- Messages: 1290
- Inscription: 26 Fév 2004
Il s'agit uniquement de ces deux paramètres de phpMyAdmin :
Donc un seul underscore suffit pour les bases de données, mais il en faut deux pour les tables (comme expliqué au dessus
).
Perso ce truc m'insupporte et j'ai tendance à le dégager. Affaire de goùt quoi
- Code: Tout sélectionner
/**
* the separator to sub-tree the select-based light menu tree
*
* @global string $cfg['LeftFrameDBSeparator']
*/
$cfg['LeftFrameDBSeparator'] = '_';
/**
* Which string will be used to generate table prefixes
* to split/nest tables into multiple categories
*
* @global string $cfg['LeftFrameTableSeparator']
*/
$cfg['LeftFrameTableSeparator']= '__';
Donc un seul underscore suffit pour les bases de données, mais il en faut deux pour les tables (comme expliqué au dessus
Perso ce truc m'insupporte et j'ai tendance à le dégager. Affaire de goùt quoi
15 messages
• Page 1 sur 1
Lectures recommandées sur ce thème :
- gestion tables sql
- Requête SQL pour Annuaire Freeglobes
- plusieurs freeglobes sur 1 même base sql
- Requete SQL sur 2 tables
- PHP / SQL et la commande LOCK TABLES
- [Résolu] PB requete SQL 3 tables + 2 count
- SQL Requête dans plusieurs tables
- Passer deux tables SQL en une
- Tables SQL disparues chez OVH
- Passage de tables sql en flux xml locatif ?
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité

