/ Forside / Teknologi / Udvikling / SQL / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
SQL
#NavnPoint
pmbruun 1704
niller 962
fehaar 730
Interkril.. 701
ellebye 510
pawel 510
rpje 405
pete 350
gibson 320
10  smorch 260
[Mysql] Newbie spm om database-tabel-struk~
Fra : Jesper Brunholm


Dato : 11-09-01 11:34

Hej folks, håber at der er nogen der kan/vil rådgive mig

Jeg skal til at lave en mysql-db (som på web skal interagere med php)
med HC Andersens eventyr-titler på forskellige sprog.

Der er 176 eventyr og jeg skal gerne kunne have 25 sprog for hvert
eventyr. En titel fylder i gennemsnit 40 tegn.

Jeg skal gerne kunne hente et vilkårligt eventyr (identificerede med
nummer) ud på et vilkårligt sprog, subsidiært må det gerne være let at
hente et helt sprog ud.

Spørgsmålene er så:

?1) gør det nogen forskel om jeg laver rækker med sprog, eller med
eventyr (henholdsvis x1 og x2)
x1
dansk, fyrtøjet, hyrdinden og skorstensfejeren
engelsk, the tinderbox, the sherpherd and the shepherdess
tysk, osv
x2
dansk, engelsk, tysk, osv
fyrtøjet, the tinderbox
hyrdinden og skorstensfejeren, the shepherd and the shepherdess

?2) Bør jeg af hensyn til performance dele op i flere tabeller?

pf tak for al hjælp

Venlig Hilsen

Jesper Brunholm

-----------------------------------
H C Andersen-Centrets sider: <http://www.andersen.sdu.dk/>
-------------------------------------

 
 
Nis Jorgensen (11-09-2001)
Kommentar
Fra : Nis Jorgensen


Dato : 11-09-01 13:53

On Tue, 11 Sep 2001 12:34:20 +0200, Jesper Brunholm
<jesper@brunholm-scharff.dk> wrote:

>?1) gør det nogen forskel om jeg laver rækker med sprog, eller med
>eventyr (henholdsvis x1 og x2)
>x1
> dansk, fyrtøjet, hyrdinden og skorstensfejeren
> engelsk, the tinderbox, the sherpherd and the shepherdess
> tysk, osv
>x2
> dansk, engelsk, tysk, osv
> fyrtøjet, the tinderbox
> hyrdinden og skorstensfejeren, the shepherd and the shepherdess

Formodentlig. Begge dele er dårligt design. For hvis du vil tilføje et
sprog eller et eventyr, bliver du nødt til at lave dit tabel-design
om. Og sikkert også (noget af) dit php.

>?2) Bør jeg af hensyn til performance dele op i flere tabeller?

Ja, eller i hvert fald normalisere. Jeg ville dele det op i tre
tabeller:

Eventyr: EventyrID og Originaltitel (samt eventuel anden information
om værket)

Sprog: SprogID, Sprognavn

Titler: EventyrID, SprogID, Titel

Alle eventyr på kinesisk:
SELECT Titel FROM (Eventyr NATURAL JOIN Titler) NATURAL JOIN Sprog
WHERE Sprog.SprogNavn = 'Kinesisk'

Nattergalen på alle sprog

SELECT Titel FROM (Eventyr NATURAL JOIN Titler) NATURAL JOIN Sprog
WHERE Eventyr.Originaltitel= 'Nattergalen'

MySQL har sikkert ikke NATURAL JOIN. Brug i givet fald INNER JOIN i
stedet.

Og køb en bog om databasedesign.


Søg
Reklame
Statistik
Spørgsmål : 177517
Tips : 31968
Nyheder : 719565
Indlæg : 6408636
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste