Hallo,

Ik moet een vertalingsdatabase opzetten voor een aantal productnamen
Dit moet gebeuren zodat er plaatjes gemaakt kunnen worden om op het schakelpaneel te plakken
Ik heb nu dit datamodel maar heb het idee dat dit beter en makkelijker kan..

[table 'product']
id
productomschr

[table 'NL']
id
productvertaling

[table 'FR']
id
productvertaling

[table 'DE']
id
productvertaling
Waarom zou je dan naar die versie terug gaan? Welk onderdeel van wat Frank zegt laat je dat doen?

(Tip: Let ook op "geen Herhalende kolommen in een tabel"
Hoe kan ik dan op een goede manier verschillende talen opslaan?
Dan lijkt mij de allereerste manier weer de beste maar zit je weer met gelijkwaardige tabellen..?
Robert zijn opzet is imo de juiste
Dat is onderstaande:

[table 'languages']
id
language

[table 'products']
id
price
etc.

[table 'prod_lang']
id
prod_id
lang_id
name

Moet ik dan mijn gegevens ook als volgt opslaan?:

[table 'languages']
1_DE
2_NL
3_FR
4_UK

[table 'products']
1_230_Ventilator
2_180_motor
3_450_transformator

[table 'prod_lang']
1_1_1_das Ventilator
1_1_2_Ventilator
1_1_3_Ventilateur
1_1_4_Vent
1_2_1_das Motor
1_2_2_Motor
1_2_3_Moteur
1_2_4_Engine
etc...

ziet er in mijn opzicht niet echt uit als "makkelijk een nieuwe taal toe te voegen".. of begrijp ik hem verkeerd?
Frank had het ook niet over de Opzet wout ;) De taal voor het INSERTEN van gegevens of het MAKEN van tabellen verschilt lichtelijk tussen verschillende SQL methoden (MySQL, of PostgreSQL bijvoorbeeld) en dat was waar Frank op doelde. De query's (Create table / Alter table enz) zijn lichtelijk anders, omdat er in PostgreSQL soms iets andere typen of namen aan typen kolommen worden gebruikt.
De manier zoals ik hem voorgaf heeft:
- Geen 'een-op-een' relaties.
- Geen herhalende kolommen in een tabel
- Geen tabellen met dezelfde (of sterk gelijkende) structuur
- Alle gegevens in een record moeten afhankelijk zijn van de gehele primary-key

Jou eerste opzet heeft:
- Tabellen met dezelfde (of sterk gelijkende) structuur
ziet er in mijn opzicht niet echt uit als "makkelijk een nieuwe taal toe te voegen".. of begrijp ik hem verkeerd?
Laat ik deze openstaande deur maar eens intrappen... Ja, je ziet het helemaal verkeerd! ;)

Je voegt in de tabel languages een taal toe en klaar is kees! Hoe simpel wil je het hebben? Geen enkele aanpassing in het datamodel en toch kun je een taal toevoegen.

Of bedoel je nu de diverse vertalingen van de producten? Uiteraard moet je dat ook toevoegen, maar dat kan onmogelijk in een paar seconden. Waarschijnlijk moet je honderden, zo niet duizenden, producten gaan vertalen. Dat zul je dus 1-voor-1 moeten doen. Eerst met een JOIN selecteren welke producten NIET zijn vertaald en vervolgens de vertalingen alsnog toevoegen met een INSERT-query.

En het datamodel hoeft er niet 'makkelijk' uit te zien, zolang de database er maar snel en eenvoudig mee kan werken, is het goed genoeg.

Ps. Een nieuwe openstaande deur kun je bij de Gamma kopen... :p
Ja ok, dan snapte ik het dus toch wel goed, maar even miscommunicatie.. :)ik ga em even toepassen en testen

ik bedoel idd het vertalen van producten, logisch dat je die handmatig allemaal moet invoeren, alleen had ik het idee dat hij dat als makkelijk bedoelde.. :) maar puur alleen de taal

Reageren