Hogyan érdemes megtervezni az adatbázist? Részletek lent.
Hogyan érdemes megtervezni az adatbázist? Részletek lent.
Példaképp egy konkrét példának egy szeletét kérdezném.
Lenne egy munkalap űrlapom amin pl a következők szerepelnének:
- Ügyféladatok: Név, Tel.szám, stb.
- Berendezés megnevezése: Notebook, Nyomtató, Monitor, stb.
- [...]
Szeretném azt majd megoldani, hogy a "Berendezések megnevezése" rekordjai bővíthető vagy törölhető legyen.
Továbbá a "Berendezések megnevezése"-hez kapcsolódna egy másik tábla, mi mondjuk részletezné az egyes
berendezések tulajdonságát. Pl.: notebook-nál: -Töltő nélküli, -Akku nélküli stb.
Szóval ilyen esetben a munkalap táblában a berendezés tulajdonságánál az értékét kell eltárolni és nem mondjuk
a id-értéket, mert ha mondjuk törlöm/módosítom akkor már hamis értéket fog mutatni a régen felvitt munkalapoknál
szűrésnél. Csak így viszont egy csomó egyforma értékek lesznek a munkalap táblában, ami okozhat e lassulást, gondod.
Vagy hogy szokták ezt megoldani?
Törlésné/módosításnál lehet indexeket frissíteni elég könnyen. Pl.: [link]
A tulajdonságok 1 táblába és a termékhez a tulajdonságokat egy kapcsoló táblával veheted fel, kész is a több, a többhöz kapcsolat.
Ha törölsz egy tulajdonságot, akkor a kapcsoló táblából is törtölheted -> az a régi lapokról el fog tűnni. Vagy ha szerkeszted a nevét, akkor ugye mindenhol más lesz a neve.
Szerintem érdemes elkezdeni az alapoktól, és elolvasni valami tankönyv bevezető részét, vagy ezzel foglalkozó weboldalt. Néhány megjegyzés:
1. Konkrét példának a szeletei alapján nem tervezünk adatbázist, mert rossz lesz. Pont. Először összegyűjtjük, mire lesz szükségünk. Ez a különbség a tervezés és a gányolás között.
2. Szinte biztos vagyok benne, hogy nem a berendezés megnevezése képviseli az egyedeket a nyilvántartásodban. Ugye nem akarod egy notebookra és egy monitorra korlátozni a vállalkozásodat?
Minden bővíthető, de szerencsésebb egyből felmérni az igényeket, és ami előre látható, azt egyből belevenni.
A törlésekkel már sokkal nehezebb a helyzet, adatbázistáblából mezőt törölni csak korlátozottan és megfelelő hozzáértés birtokában lehet, mert át kell látni a következményeit. Rekordot megint korlátozottan és ésszel lehet törölni, mert meghamisítja a múltat. Általában a törlés nem a fő munkamódszer, hanem a kivétel! A háttértárak elbírják a többletet. Jól megtervezett adatbázisból ritkán kell törölni, leginkább a tévesen bevitt adatot.
3. "Szóval ilyen esetben a munkalap táblában a berendezés tulajdonságánál az értékét kell eltárolni és nem mondjuk
a id-értéket, mert ha mondjuk törlöm/módosítom akkor már hamis értéket fog mutatni a régen felvitt munkalapoknál
szűrésnél."
Innentől már nem beszélhetünk adatbázisról, mert az alapokat számoltad fel. Miért akarod törölni vagy módosítani? Ez maga a beépített káosz.
Ha értékeket tároltál, és fél év múlva eszedbe jut egy nagyon fontos új kérdés, akkor hogy fogsz választ kapni rá?
Az adatbázis-kezelés alapjaihoz tartozik, hogy id-ket tárolunk, és értékeket csak egészen kivételes esetben. Számított értéket pedig alapvetően csak akkor, ha az újbóli kiszámítása sok időbe kerülne. (Ha tudjuk a termék árát és darabszámát, nem tároljuk az összeget, mert az egy szorzás. De ha van olyan jellemző, amit nagyon lassú kiszámolni, akkor igen.)
Ha komolyan szükséged van erre az adatbázisra, kicsit fogalmazd meg jobban a problémát, és mélyedj el az alapokban, vagy bízz meg ehhez értő szakembert, mondjuk engem, hogy segítsen megtervezni az adatbázist. Egy jó szakember fel fogja mérni az adatbázis helyét a munkafolyamatban, és fel fogja tenni azokat a kérdéseket is, amik neked most még nem jutnak eszedbe.
Az adatbázis tervezés alapjai és titkai:
"Az adatbázis tervezés alapjai és titkai: "
Most ez komoly? Számítástechnikában egy 21(!!!!) éves könyvet ajánlasz? (ami magyar nyelven íródott, tehát már akkor is elavultnak számított.) Akármelyik adatbázisos tutorialnak több értelme van.
Teljesen komoly. Ha a delikvens ebből a könyvből megérti az adatmodellezés lényegét, akkor tökéletes adatmodellt fog tudni készíteni, amely a jó adatbázis alapja.
Nekem ez volt a jegyzetem, felülmúlhatatlan. Alapmű.
Ennél már csak a Halassy B. 2000. évi kiadású Adatmodellezés, elmélet és gyakorlat c. egyetemi tankönyve jobb, amire nem tudtam/akartam hirtelen linket keríteni, de megtalálható a neten.
Ha ezeket a könyveket nem becsülöd, akkor nincs egymásnak mit mondanunk.
"akkor nincs egymásnak mit mondanunk."
Ez utóbbi kommented után, én ebben egészen biztos vagyok.
Én közben elkezdtem olvasni ezt a Halassyt, és profiként biztos sok érdekeset találnék benne, és nagyon érdekes szemléletet.
Hogy hány éves, az nem baj, mert nem programnyelvekről szól, hanem az adatbázis-tervezésnek azokról az alapjairól, amik nem sokat változtak, főleg nem egy kezdő szintjén. Az még kevésbé baj, hogy magyarul van, attól nem lesz elavultabb, ez marhaság. Fordításnál talán igen, de ez eredeti magyar. Nagyon jó, hogy vannak magyar könyvek.
Viszont ha egy kezdő ezt a könyvet elkezdi olvasni, mire a lényegig eljut, és megértene belőle valamit, garantáltan teljesen összezavarodik, és elmegy a kedve az egésztől. Valami klasszikusabbat kéne egy kezdőnek ajánlani, ami nagyobb hasznára lesz, és jobban koncentrál a lényegre.
Az egyetemi adatmodellezés jegyzet is megvan a MEK-en:
Köszönöm a hozzászólásokat. Természetesen a felvázolt példa egyfajta skicc nem egy konkrét megvalósítás.
Mellesleg gyakorlásnak szánom. Készítettem már adatbázist, de most valóban meg szeretném jobban tervezni.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!