sql >> Database teknologi >  >> RDS >> Mysql

databasedesign til quiz med forskellige sprog

Databasedesign bør følge af en mere generel informationsdesignmodel afledt af en konceptuel informationsmodel , fortrinsvis i form af UML-klassediagrammer (på grund af deres udtryksevne). Følgende er en konceptuel informationsmodel for dit problem:

En sådan model skal stadig beriges med passende standardidentifikatorattributter og datatyper for at opnå en informationsdesignmodel. Ved at eliminere associationerne og sammensætningerne (erstatte dem med referenceegenskaber) opnår vi følgende OO klassemodel, som kan bruges som grundlag for kodning af Java/C#/PHP/etc. klasser:

Bemærk, at vi har tilføjet understøttelse af flersprogede quizzer i denne OO-klassemodel ved at tilføje en IsoLanguageCode enumeration og en TextItem klasse med en todelt primærnøgle bestående af et tekstelement-id og en sprogkode, således at quizzer, spørgsmål og svarmuligheder bruger et tekstelement-id til at referere til de tekstelementer, der bruges som deres titel, spørgsmålstekst og svartekst. Bemærk også, at Quiz klasse har en afledt egenskab \availableLanguages som kan beregnes ved hjælp af en forespørgsel, der henter alle sprog, for hvilke tekstelementer til alle spørgsmål i en quiz og alle deres svarmuligheder er tilgængelige.

En SQL-databasedesignmodel kan udledes af en sådan OO-klassemodel ved at erstatte referenceegenskaberne med tilsvarende fremmednøgleattributter:



  1. SQL VÆLG AVG

  2. hvordan man bruger tns-indgange med macromedia-drivere til Oracle

  3. SQL SERVER - Forstå hvordan MIN(tekst) virker

  4. couchdb vs mysql speed