XMLDB Editor

Uit MoodleDocs
(Doorverwezen vanaf admin/xmldb/)
Ga naar:navigatie, zoeken

Moodle 1.7

Plaats: Beheer > Diversen > XMLDB editor


  • De XMLDB editor is een tool voor .xml files te maken die specifieren hoe moodle zijn databank tabellen zou moeten plaatsen. Vooraf, developers moesten gescheiden .sql installeerbestanden aanmaken voor mysql en postgres, maar nu is alleen databank-neutraal bestand nodig, dat bestand ondersteunt meerdere databanken.

Het maakt het bewerken van tabellen/velden/sleutels/indexen bijna een plezierige taak, die het voor programmeurs mogelijk maakt om code te schrijven en functies te verbeteren in plaats van te zitten knoeien met XML bestanden en de foutmeldingen veroorzaakt door manuele bewerking.

  • Het maakt het bewerken van tabellen/velden/sleutels/indexen bijna een plezierige taak, die het voor programmeurs mogelijk maakt om code te schrijven en functies te verbeteren in plaats van te zitten knoeien met XML bestanden en de foutmeldingen veroorzaakt door manuele bewerking.

Alle nieuwe install.xml bestanden die in elke db map staan in Moodle kunnen bewerkt worden (en we raden dat aan) door middel van een paar kliks en tekstlijnen. Deze install.xml zullen alle info bevatten die nodig is om specifieke objecten nodig voor elke RDBMS genereren.

  • Alle nieuwe install.xml bestanden die in elke db map staan in Moodle kunnen bewerkt worden (en we raden dat aan) door middel van een paar kliks en tekstlijnen. Deze install.xml zullen alle info bevatten die nodig is om specifieke objecten nodig voor elke RDBMS genereren.
  • Opmerking: Om het mogelijk te maken om de bestanden manueel te lezen, zal de webserver toegang moeten krijgen tot alle db mappen waar de install.xml bestanden staan(en de bestanden zelf natuurlijk). Als je niet kan klikken , en zelfs niet op de laden of maak link kan klikken, betekent dat je ook geen /db map hebt gemaakt, of dat de map op de webserver niet beschrijfbaar is.

Gebruik

  • De XMLDB editor is zeer gemakkelijk te gebruiken , dat is waarom hiervoor geen volledige handleiding is. Ermee spelen voor een tijdje wordt sterk aangeraden, zien hoe het werkt en hoe je de install.xml bestanden moet wijzigen.
  • Het is georganiseerd in een boven-onder structuur, waar je start laden (of maak) een nieuw XMLDB bestand. Dan kan je het bestand Bewerken en zijn Hoofdstructuur zal getoond worden. Deze structuur heeft twee type elementen, Tabellen en uitspraken en de XMLDB editor maakt het je mogelijk om hen makkelijk te Maken,Bewerken,Verwijderen en te Verplaatsen. Ook, voor initialen van tabellen one small but effective reverse-enginery tool has been developed (only under MySQL) allowing you to retrofit any table from the DB to the XMLDB Editor.


  • Tijdens het bewerken van tabellen zal je hun velden, sleutels,indexen zien en zal je de mogelijkheid hebben om hen makkelijk te lezen. Merk op dat sommige velden niet kunnen bewerkt worden. Dit komt doordat ze zijn gebruikt (deel van een index bijvoorbeeld) en het idee is om u daarvoor te waarschuwen.


  • Velden kunnen bewerkt worden en je kan hun naam,type,lengte,decimalen,NULL,Standaarden,... specifiëren. Exact dezelfde voor sleutels en Indexen.


  • Tijdens het bewerken van de statements, zou je aan hen moeten denken zoals een "Collectie van zinnen". Vanaf dat je het Type (alleen invoegen is nu toegestaan) en tabel waarin je geïnteresseerd ben selecteerd , zal je de mogelijkheid hebben om de exacte waarden makkelijk de introduceren en te dupliceren om zo snelheid te winnen als je veel zinnen in je code hebt. Zinnen kunnen ook makkelijk Bewerkt en Verwijderd worden.
  • Een interessante functie is dat alle XMLDB editor pagina's je het mogelijk zullen maken om commentaar toe te voegen over het element dat gewijzigd werd(tabel, index, sleutel, veld , statement). Gebruik het zoals je wil, het zal zeker andere programmeurs helpen om wat meer te begrijpen van het DB model.

Vanaf dat je het install.xml bestand gemaakt hebt, zal je nog steeds manueel een upgrade.php bestand moeten maken in je module's db map in volgorde om tabellen toe te voegen aan je databank. Het upgrade.php bestand zou er zo ongeveer moeten uitzien:

<?php

function xmldb_realtimequiz_upgrade($oldversion) {
    global $CFG;

    $result = true;

// Insert PHP code from XMLDB Editor here

    return $result;
}
?>

To get the code for the '// Insert PHP code here' bit, open the XMLDB Editor and load the relevant install.xml file. Choose the 'View PHP' option and then copy and paste the generated code.

Afspraken

Los van het Database Structures guidelines, zullen meerde afspraken moeten gevolgd worden:


  1. Over namen:
    1. Alle lowercase namen (tabellen, indexen, sleutels en velden).
    2. Voor Namen van tabellen en velden mag je enkel a-z, 0-9 and _ tekens gebruiken.
    3. Primaire sleutel moet altijd "primair" genoemd worden (dit is een uitzondering op de vorige afspraak).
    1. Het wordt aangeraden om reserved words volledig te vermijden.
  1. Over NULLS
    1. Vermijd het maken van alle velden als NOT NULL met de silly standaardwaarde ''(lege string)
  2. Over Verwijzing naar de sleutel van een andere tabel
    1. onder de tabellen van elk XMLDB bestand, moet je een bestaande verwijzing definiëren. Dit zal het voor iedereen mogelijk maken om wat beter de structuur te kennen, staat toe om te evolueren tot een beter systeem.
    2. Merk op dat, als je eender welk veld definieert als een verwijzing , dat je geen andere index in dat veld moet creeëren, de code zal dat automatisch doen.
    1. Deze afsoraak is enkel voor relaties IN één bestand. Maak geen verwijzigen constraints against other files (courseid, userid), use indexes there.
    2. Respecteer afspraak 1.3
  1. Over unieke toetsen
    1. Benoem eender welk veld als een unieke toets, enkel als deze zal gebruikt worden als bestemming voor één verwijzing. Maak unieke indexen in plaats.
    2. Respecteer afspraak 1.3

Zie ook