Goedemiddag, ik ben nieuw hier. Excuses als ik niet het juiste forum of plaats heb gebruik.

Ik ben bezig met een ICT opleiding en mijn extra vak is Basis scripting en databases. Ik zet hier wat mijn eerste opdracht was -

In deze inzendopgave werkt u uit wat de verschillen zijn tussen de databaseconnectiviteitopties van de programmeertalen Java en PHP.
Daarvoor stelt u een korte handleiding per taal op over hoe de installatie van Eclipse, PHP/Java en MySQL wordt uitgevoerd op een openSUSE Leap-installatie.
Deze installatie voert u het beste in een virtuele machine (bijvoorbeeld VirtualBox) uit, dat is handig omdat u daarmee van alle stappen snapshots kunt maken.
Mocht er dan ergens verderop in het installatieproces een fout optreden, dan kunt u een eerdere snapshot makkelijk herstellen en kunt u de installatiehandeling opnieuw proberen.
Daarbij mag u verwijzen naar onlinedocumentatie van deze projecten, maar wel moet u alle onderdelen van een werkende ontwikkelomgeving benoemen.
Voor de installatie van openSUSE Leap mag u dus bijvoorbeeld verwijzen naar de openSUSE-documentatie.

U maakt per taal twee (commandline)scripts. De scripts moeten enkele simpele query’s uitvoeren, het gaat in deze inzendopgave vooral om het succesvol leggen van een verbinding met een database en het aantonen van begrip van de verschillende werkwijzen van deze programmeertalen.
Op zich hoeven de scripts geen data te bewerken, dus een eenvoudig script dat een connectie opzet en bijvoorbeeld de tabellen laat zien, en een ander script dat een DESCRIBE TABLE uitvoert met daarin metadata van een tabel, is acceptabel.
De scripts en de output van deze scripts zendt u in; dit kan als 'plat' tekstbestand of u copy/paste de output in een leeg tekstdocument.
Ook werkt u een matrix uit met de verschillen tussen de twee platforms.
Per taal werkt u voor de MySQL-database twee drivers/connectieopties uit.
Daarbij is het de bedoeling om één 'native' connector te gebruiken (PDO op PHP) en één database-abstractielaag (Doctrine voor PHP, Hibernate voor Java).
Voor PHP is het verstandig om, vooruitlopend op inzendopgave 2, alvast gebruik te maken van het Symfony 2-framework, deze heeft een commandline-tool voor het uitvoeren van Doctrine-commando’s.
De verschillen zitten in:

  • Opbouw van verbinding met databaseserver.
  • Methodes om query’s programmatisch samen te stellen (i.p.v. manuele SQL-query’s).
  • Functies vanuit de programmeertalen voor security (inputfiltering, query parametrisering).

Daarbij mogen links naar de documentatie van deze adapters worden gebruikt ter onderbouwing.

Deze opdracht is al gemaakt maar ik loop een beetje vast met mijn tweede opdracht lees hier onder

In deze inzendopgave demonstreert u hoe in verschillende programmeertalen (Java, PHP):


  • een database kan worden aangemaakt in een databaseserver
  • voor een gebruiker hieraan rechten kunnen worden toegekend
  • op basis van een bestaand (ANSI) SQL-script een tabelstructuur geïmporteerd kan worden
  • een databaseback-up en -restore uitgevoerd kan worden.

Voor PHP maakt u daarbij gebruik van het Symfony 2-framework; daarin installeert u Doctrine en maakt u van de Doctrine Migrate-functionaliteit gebruik voor het aanmaken van een database vanuit een XML-schemabestand.
Dit bestand is het voorbeeld-XML-schemabestand vanuit de Doctrine-onlinedocumentatie.

Voor alle duidelijkheid, u mag dus gebruikmaken van tooling in deze inzendopgave. In Java kunt u bijvoorbeeld de tool SquirrelSQL of een Eclipse SQL-plug-in toepassen.
Het belangrijkste is dat zichtbaar is dat u de SQL-query’s voor het uitvoeren van de operaties op de juiste wijze via deze tools uitvoert.
De uitwerking van deze inzendopgave moet een 'log' zijn van alle input (commando’s) en output (resultaten).
Dit log moet voldoende informatie bevatten zodat een systeembeheerder de commando’s zelfstandig zou kunnen uitvoeren op een eigen omgeving.
Het moet dus zowel een log zijn als een soort werkinstructie. Het format waarin u dat uitwerkt, staat vrij, maar het advies is om er een soort checklist met uitleg van te maken.
Daarbij moet u beschrijven wat per commando het verwachte resultaat had moeten zijn en of dit overeenkwam met het daadwerkelijke resultaat of dat er fouten optraden.

De commando’s mogen als de root user van de MySQL-databaseserver worden uitgevoerd.

Mijn docent is niet echt behulpzaam en ik heb geen les stof omdat dit is iets waar ik moet zelf uitzoeken maar ik ben een echt beginner met scripting taal, zijn daar hier mensen die dit opdracht kunnen uitleggen of mij aanwijzen waar ik kan het beste informatie vinden? Ik ben erg dankbaar als je mij kan helpen. Dank je wel alvast.