Lehet e ilyet Microsoft accessben?
Sziasztok!
Munkahelyemre kéne valami olyasmi accessben, hogyha egy sorban módosítás történik akkor lássam az elöző adatokat is.
Pl tegyük fel van Kis Pista aki Szegeden lakik. Elköltözött Budapestre, később londonba.
Hogyan lehetne megoldani azt, hogy én lássam hogy korábban Kis Pista lakott korábban szegeden és budapesten is?
Az adatbázis csak azt tárolja amit felvisznek és bent is hagynak. Ha van 1 darab "lakóhely" nevű kategóriád amiben 1 darab adatot tárolsz, akkor mindig csak az lesz látható.
Csak laikusként én olyan módszert választanék ami minden adatot tárol, így az listázhatóvá válik. Például 'jelenlegi lakóhely', 'korábbi lakóhely1'-2-3-stb, így azokat már le lehet kérdezni. A jelenlegibe megy London, minden korábbi pedig csúszik az előző lakóhelyek adataiba.
valami olyasmit nem lehetne, hogyha módosítom akkor azt egy új táblában mentse el ?
Sajnos valahogy mindenképp tárolnom kellene az előzményeket és pl a korábbi lakhely nem megfelelő mert így is nagyon sok sorból fog állni. elég sok adatot fog tartalmazni és visszamenőleg valahogy tárolnom kellene a modositott adatokat.
Na, eddig iszonyú rossz válaszok jöttek, olyan megoldások, amit abszolút sértik az adatbázis normalizálást, ami borzasztó alapvető kell, hogy legyen.
Egy historikus táblát kell csinálni, ami időrendben tárolja a korábbi lakcímeket.
Ezt lehet feltölteni teljesen automatikusan egy trigger segítségével, de azt csak akkor szabad meglépni, ha kicsi az adatbázis, kicsi a terhelés rajta és nem is várható, hogy nagyobb mértékben lesz használva, mert iszonyú teljesítménybeli problémakat okozhat.
Ha ezek közül bármelyil nem áll fent, akkor egy tárolt eljárást kell írni és csak azon keresztül engedni módosítani a táblát.
mennyi számít soknak? 4000 soros lenne az adatbázis és időközönként azaz kb havi 2x-3x lenne módosítás, attól függően mennyi problémás eszközről van szó ahol csere miatt módosítani kell bizonyos adatokat.
eljárás írás alatt macrokra gondolsz? Szóval összekattintgatni ezt nem lehet csak leprogramozni?
Egy ilyesmi adatbázis-struktúrát érdemes létrehozni:
szóval kell:
* egy tábla (a példában Names), amiben eltárolod a neveket (FirstName, LastName) - mivel egy névből lehet több is, tárold el a születési idejüket (DateOfBirth) is
* egy tábla, amiben eltárolod a városokat (Cities) - a városok nevei (City) egyediek
* egy tábla (Residences), amiben összekötöd a két előbbi táblát, és felveszed melléjük a lakóhelyre való költözés dátumát
Szükség lesz egy űrlapra, melyben felviheted a (vezeték és kereszt) nevet, a születési dátumot, a várost és a költözés időpontját.
Ha az adott név az adott születési dátummal nem létezne, felviszed a nevekhez.
Ha az adott város nem létezne, felviszed a városokhoz.
Megnézed a lakóhelyek között hogy megtalálható-e a név (NID) és a város (CID) azonosítója - ha igen, akkor kilistázod őket a beviteli űrlap felett.
Utóbbihoz segítséget nyújt a táblák összekapcsolása:
"4000 soros lenne az adatbázis és időközönként azaz kb havi 2x-3x lenne módosítás"
Ez szinte semmi akkor.
Nagynak 50 millió sor és másodpercenként 50-100 módosítás számít.
#7 Tök igaz. Mivel egy 50 Milliós országban simán van másodpercenként 50-100 költözés. Hiszen az mindössze 4 millió költözés naponta. Azaz átlagosan egy ember 10 naponta költözne más lakásba. Oda megérné költöztetőcéget alapítani. :)
Szóval ha te is pontosan tudod hogy az adatbázisban nem lesz túl sok módosítás, akkor miért sírsz a mérete miatt?
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!