Bonjour,
je souhaite ajouter plusieurs cles etrangeres dans ma base de donnees.
mais aucun moyen de trouver la fonction "Vue Relationnelle".
voila je voulais savoir si vous aviez deja eu ce probleme et comment vous avez pu le regler ^^
merci :)

21 réponses


T'utilises quoi pour gérer ta BDD ? PHPMyAdmin ? Ou un logiciel dédié ?

Grope
Auteur

oui pardon oublie de preciser, phpmyadmin

Alors dans PHPMyAdmin, tu cliques sur ta base de données
Et sur le panneau de droite, tu vas tout au bout jusqu'à "plus" et si ta une version récente, ça doit être "concepteur"

Grope
Auteur

Cet onglet cest pas pour faire un MCD ou quelque chose comme ca parce quil ne maide pas a faire de foreign key la :/
si ?

Ok, deuxième solution, vérifie que ta table où tu veux ta foreign key, est configuré en innoDB (et pas MyISAM)
NORMALEMENT quand tu vas sur la structure de ta table, tu as "Vue relationnelle" qui apparaît

Ou sur une autre version de PMA, c'est sous forme d'onglet au dessus :

Mais dans tous les cas, très important, tu dois être en innoDB

Grope
Auteur

Voilà ce qui apparait pour ma part !

Je ne sais pas si c'est important mais j'ai oublié de préciser que j'étais sous Mamp.
Merci.

Je suis sur MAMP aussi mais là je vois absolument pas où tu es, comment tu as fait pour arriver sur cette page ?

Grope
Auteur

J'ai tapé dans SQL, une fois que tu es sur la table souhaitée -> SHOW ENGINES

Je comprends toujours pas pourquoi tu as était là dedans.
Reprenons depuis le début, tu es sur PHPMyAdmin, tu viens de selectionné ta base de donnée, donc apparait sur la fenetre principale toutes tes tables.

Clique sur celle que tu veux, et tu vas sur l'onglets Opérations

Tu vois normalement maintenant différent "panneaux", celui qui nous intéresse et Options pour cette table change le "Moteur de stockage" en InnoDB si ce n'est pas déjà le cas, et tu executes.

Maintenant retourne sur l'onglet Structure toujours dans sur ta table et juste en dessous une fois cliqué sur structure, tu as deux onglets Structure de la table et Vue relationnelle

C'est le deuxième que tu cherches

Grope
Auteur

Ah d'accord je ne savais pas que c'était déjà renseigné ici.
Le moteur de stockage est déjà en InnoDB, je n'ai toujours pas les Vues Relationnelles :/

Y a forcément quelque chose que tu as ratés, je suis sur MAMP aussi, j'ai écris toutes les étapes en les reproduisant en même temps, j'ai le MAMP d'origine, je l'ai jamais modifié. Donc ça ne peut venir que de toi :/

En étant en InnoDB, ça débloque la vue relationnelle, en fonction de ta version de PMA, l'onglet se trouve soit au dessus de la structure des tables, sois en dessous. Tu n'as peut-être pas fait attention.

Prends plus de screen, à l'aveugle je peux pas t'aider

J'ai trouvé ça : http://newvibes.com/blog/enabling-relation-view-in-phpmyadmin-mamp/

Mais ça ne t'aidera pas je pense, j'ai vérifier et tout est normal.

Grope
Auteur

J'ai réinstallé MAMP hier aussi.
Je n'ai rien touché après l'installation :/

La version de PHPMyAdmin de mon MAMP est la 5.5.42
Tu es sous quelle version toi ?

Et dans Structure tu as quoi ? Screen moi la partie structure

Quand tu dis version de PHP My admin, tu parles de la version du serveur Mysql ? Car je suis en version 5.5.42 pour le serveur et 4.4.1.1 pour PHP My Admin

Grope
Auteur

Dans Structure j'ai le deuxième screen au dessus.
Et oui je parlais de la version du serveur.
J'ai les mêmes version :/

Quel deuxième screen ?

Grope
Auteur

Celui-ci :

C'est tout ce que j'ai dans Structure, le reste c'est le listage de mes colonnes.

Et au dessus des colonnes comme sur ce screen ?

Grope
Auteur

Je n'ai rien

Grope
Auteur

Je viens de voir sur un serveur qui avait phpmyAdmin la vue relationnelle est présente, ce qui veut qu'il y'a probablement une fonction a modifier dans le php.ini ou quelque chose comme ca je pense ?

Elle est normalement présente après tout ce que je t'ai dit de faire, y a pas d'autres solutions :/
Sinon réfère toi au lien que j'ai posté en haut, notamment cette partie là :

  • Find /Applications/MAMP/bin/phpMyAdmin/sql/create_tables.sql

I left this file default but you can change the table name to anything you want. I left mine phpMyAdmin

  • Open phpMyAdmin and go to the Import tab.
  • Click the browse button and find the create_tables.sql file and then click Go.

The tables required for Relation view will be added to the database you specified.

  • Open /Applications/MAMP/bin/phpMyAdmin/config.inc.php
  • Find the Server(s) configuration code block and replace/uncomment the following code and fill in the values. If you left everything default in the create_tables.sql file then you should just cut and paste the lines below.
    $cfg[‘Servers’][$i][‘pmadb’] = ‘phpmyadmin’;
    $cfg[‘Servers’][$i][‘bookmarktable’] = ‘pma_bookmark’;
    $cfg[‘Servers’][$i][‘relation’] = ‘pma_relation’;
    $cfg[‘Servers’][$i][‘table_info’] = ‘pma_table_info’;
    $cfg[‘Servers’][$i][‘table_coords’] = ‘pma_table_coords’;
    $cfg[‘Servers’][$i][‘pdf_pages’] = ‘pma_pdf_pages’;
    $cfg[‘Servers’][$i][‘column_info’] = ‘pma_column_info’;
    $cfg[‘Servers’][$i][‘history’] = ‘pma_history’;
  • Save the file and restart MAMP and refresh your phpMyAdmin console.
  • Go to your database and view one of your tables in Structure mode. You should now see the Relation view link.

En gros assure toi que les bouts de code ci-dessus sont bien soit vides soit identique. Moi ils étaient vides, mais par défaut, laissez vide reviens à mettre ces valeurs

Grope
Auteur

Ca marche je regarderai ta solution demain. Merci :)