hoj hoj, reiktų protingo patarimo, kaip optimaliau db struktųrą susidėlioti... Yra tam tikros objetų klasės, kurios turi savo savybes. Dalis jų yra bendros (kaip Gamintojas, ProduktoKodas), dalis – kiekvienai klasei savos (vieni objektai turi Galiojimo Laiką, kiti – Kainą ir t.t.) Reikia duombazėje sukrauti informaciją apie objektus, kurie priklauso tom klasėms. Misliju, kaip geriau lentelės struktūrą susidėlioti – ar standartiškai – kiekvienai sąvybei po stulpą Manufacturer | ProductCode | Price | ValidTo |ClassId | -------------+-------------+-------+---------+--------+ ABB | AC500 | 1000 | NULL | 1 | Siemens | DKS45kW | NULL | 2015 | 2 | Danfoss | DKD6kW | 500 | 2010 | 3 | ar daryti stulpus tik tom sąvybėms, kurios yr vienodos visiems objektams, o kitas – dėti į eilutes (PropertyName ir PropertyValue) Manufacturer | ProductCode | PropertyName | PropertyValue | ClassId | -------------+-------------+--------------+---------------+---------+ ABB | AC500 | Price | 1000 | 1 | Siemens | DKS45kW | ValidTo | 2015 | 2 | Danfoss | DKD6kW | Price | 500 | 3 | Danfoss | DKD6kW | ValidTo | 2010 | 3 | Antras būdas gal painesnis, bet leidžia turėti didesnį objektų aprašo lankstumą – jei atsirastų naujų sąvybių, tiem objetam pridedi po papildomą eilutę ir viskas. Pirmu atveju, reikia keisti lentos struktūrą, pridedant naują stulpą (arba atimant, jei sąvybė dingsta). Faktas, kad struktūra dažnai keisis, todėl reikia kiek įmanoma lanksčiau pasidaryt. Kitas klausimas dėl performanc’o – ar antru atveju jis ženkliai nekris? Kalba eina apie lenta su <= 300k įrašų. Ar vienu ar kitu atveju, duomenys pasiimami per view‘us, nes reiks join‘int su kitom lentom. dėkui už pamastymus, -- bn/mj icq : 171288416 skype : bala.nemate "The blues ain't about making yourself feel better. it's about making other people feel worse." -- Bleeding Gums Murphy