Ik krijg in mijn programma PHP Myadmin de volgende foutmelding :

Fout
Extra opties om met tabellen te werken die gelinked zijn, zijn uitgeschakeld. Om te weten te komen waarom klik hier.

Klik.....

PMA Database ... Niet Goed[ Documentatie ]
Basis relatie opties Uitgeschakeld

Op internet gezocht,maar hier alom grote verwarring.
Wat betekent deze melding en is dit een zaak voor mijn host ?
Maakt u gebruik van InnoDB tabellen in uw database i.p.v. MyISAM tabellen?

InnoDB tabellen kennen zogenaamde foreign keys. Dit zijn relaties tussen de tabellen.
Voorbeeld: Er zijn twee tabellen gebruiker en bestelling.
1 bestelling hoort bij 1 gebruiker (We kunnen ook 1 op veel relaties hebben).
Om deze relatie nu vast te leggen en te bewaken gebruik je foreign keys.

Dit wordt er volgens mij bedoelt met:
Fout
Extra opties om met tabellen te werken die gelinked zijn, zijn uitgeschakeld. Om te weten te komen waarom klik hier. 


Dus volgens mij is de ondersteuning voor InnoDB tabellen weg. Dit zou door het installeren van een nieuwe versie van MySQL kunnen zijn gebeurd. In dit geval ligt het probleem bij de host.

edit:

Meer info: http://www.phpjunk.nl/topic.php?ID=282
Volgens mij heeft het niet zozeer met InnoDB-support te maken maar meer de functionaliteit welke PMA te bieden heeft. Binnen PMA kun je namelijk tabellen met elkaar koppelen, in de verschillende overzichten worden dan meteen de gekoppelde gegevens opgehaald en weergegeven (onder water worden er dus tabellen op elkaar "gejoined" op de voorwaarden welke je kunt vastleggen in de PMA-database), hiervoor is een 2e database nodig welke je bij een shared host doorgaans niet hebt.

Het is géén ondersteuning voor referentiële integriteit tussen de tabellen. Het is ook geen kritische foutmelding, je hoeft je hier absoluut geen zorgen over te maken.
@Remco van Arkelen:
Dat las ik dus ook in de link van mijn edit.

Het schijnt dus alleen aan PMA te liggen en niet aan InnoDB-support.
Klopt Martijn, 't is puur PMA-meuk, in de link die je noemt wordt echter het volgende gezegd:

Deze functies kun je inschakelen zodat er gewerkt wordt met foreign key relations. (vreemde sleutels) Als je dan iets update in de ene tabel veranderd automatisch alle relevantie info in een andere tabel ook. Kan erg handig zijn


Maar dat is dus niet waar. Als je dit wilt bewerkstelligen zal je uit moeten wijken naar de InnoDB-tabellen ('k heb er weleens iets over geschreven op http://www.phphulp.nl/php/tutorials/3/274/)
Martijn ik gebruik tot nu toe MyIsam tabellen.
Bedank Martijn en Remco het is me een stukje duidelijker geworden.
Tip: Gebruik SQL Manager 2005 Lite for MySQL (Windows) i.p.v. PMA. Dat werkt vele malen handiger, zeker wanneer je met innoDB met foreignkeys aan de slag gaat. En innoDB is eigenlijk de enige engine van MySQL die je als DBMS serieus kunt nemen, bij de overige engines (dus ook MyIsam) hangt de hele database als los zand aan elkaar. Deze engines doen geen enkele poging om jouw data te beschermen.

De Lite-versie is gratis te downloaden.
Let er wel op dat je host hiervoor connecties van buitenaf moet toestaan, dit is bij veel hosts niet mogelijk, het gros staat alleen verbindingen toe vanaf de eigen server(s).

Frank heeft echter een goed punt, PMA is absoluut niet zaligmakend en moet altijd worden gezien als een "hulpmiddel", niet als DE MySQL-tool. Veel MySQL-functionaliteiten zijn in PMA simpelweg niet aanwezig of ontbreken omdat het een webinterface is.
Remco heeft ook een goed punt, even niet aan gedacht. Ik ontwikkel altijd eerst lokaal op mijn eigen server, dus geen problemen met toegang, en ga dan op basis van de export van deze database de boel installeren op de server bij de hostingprovider. Hiervoor wordt een apart script geschreven.

Kortom, nooit gedonder met PMA! ;)

Reageren