De to varegrupper har ikke meget til fælles...
- Hvorfor vil du ("pine-død") have dem i samme tabel ?
Jeg vil mene at de to mest brugte løsninger er:
vare
----
id,INTEGER,PK
navn,VARCHAR
kategori,INTEGER
...
varebeskrivelse
---------------
id,INTEGER,PK
vareid,INTEGER,FK->vare
egenskab_navn,VARCHAR
egenskab_vaerdi,VARCHAR
og:
vare
----
id,INTEGER,PK
navn,VARCHAR
kategori,INTEGER
...
egenskaber,XML eller VARCHAR(stor) med XML med egenskaber
Arne's løsning er "pænest" hvis du spørger arkitekten, men jeg ved fra flere udbydere af spørgeskemaundersøgelser, at det er et helvede at udtrække resultaterne når først der er 20K besvarelser. hvis du har rigtigt mange produkt-typer og de alle er temmelig forskellige, så kunne du f.eks. lave en template som fortæller hvilke kolonner (og om de er krævede) og med hvilke labels du skal skrive/læse i i en mastertabel som kan bruges til lidt af hvert. Så kan du oprette lidt tekst-, number- og dato-felter som du bare kalder felt1, felt2 osv (alle ikke-krævede). Sørg for at få en kategori-kolonne med i tabellen (krævet). For lettere læsning kan du så lave et Harddisk-view, et Processor-view osv. som kan genereres dynamisk ud fra templaten for produkttypen.
#1
Fordi ham jeg koder for vil have mulighed for at oprette/redigere/slette produkt kategorier til alle mulige typer af produkter helt dynamisk og uden at jeg skal blandes ind i det.
Det i sig selv er ret lige til, men når først han også vil ha mulighed for at søge og sortere på alle kolonner i alle kategorier så er det ikke så lige til, og som skrevet så syntes jeg det skriger af 'forkert' at lave/redigere/fjerne tabeller live i databasen.
#2 og #3; Mange tak for de foreløbige svar, jeg vil lige teste alt det her i praksis før jeg beslutter mig for hvad det bliver til jeg skal nok vende tilbage til jer når jeg er kommet frem til en løsning.
Mvh.
Hej,
Nej det er jeg desværre ikke,
Pga. private forhold er jeg blevet nødt til at sætte det hele på stand-by.
Men jeg har på ingen måde glemt jer :)
Mvh.