Család nyilvántartás

Adatbázis kezelő
Szergio
Önkéntesek
Hozzászólások: 71
Csatlakozott: 2008. március 13., csütörtök 16:11

Család nyilvántartás

Hozzászólás Szerző: Szergio »

Sziasztok!

Most ismerkedek a Base-val, s egyelőre eléggé gyerekcipőben járok ... ezért is kérem a segítségeteket.

A feladat, amit meg kellene oldani - gyakorlatképpen is - egy néhány családból álló csoport adatainak a nyilvántartása. Sajnos a tervezésnél elakadok ott, hogy hogyan lehet megoldani a ki kinek a gyereke/apja/anyja viszonyokat.

Milyen irányba kellene ehhez elinduljak?

Szer
Ubuntu 20.04 • Libreoffice 7.6 • Windows 11
Avatar
g_123_wert
Önkéntesek
Hozzászólások: 71
Csatlakozott: 2008. február 29., péntek 21:58

Re: Család nyilvántartás

Hozzászólás Szerző: g_123_wert »

Szia!

A kapcsoló táblák felé.

Például jelen esetben legyen mondjuk 3 tábla.
Kapocs, Kapcsolat_tipus, emberek.

Emberek tábla: egy egyedi azonosító, és a nem változó adatok, úgymint születéskor kapott név, születési idő, hely és az illető neme.
Kapcsolat_típus tábla: egy egyedi azonosító, és egy név ( apa, fia, férje, felesége stb)
A kapocs tábla pedig egy egyedi azonosító ( itt ugyan nem életbevágó de jó ha van) és három hivatkozás.
Valahogy így nézne ki egy sora:

Kapocs tábla

rowid | hivo | hivott | kapcsolat_tipus |
-----------------------------------------------
12| 3| 4| 1|

Ami azt jelenti, hogy a 3 -as azonosító számmal az emberek táblában szereplő ember a 4 es azonosítóval a szintén az emberek táblában szereplő emberrel a kapcsolat_típus táblában 1 -es azonosítójú kapcsolatban áll. Esetleg berakhatsz két dátum mezőt, hogy lásd a kapcsolat mettől meddig tartott közöttük.
Példaként ide rakom a két hivatkozott tábla megfelelő értékeit.

Kapcsolat_tipus tábla

ktid | megnevezes |
1| Fia |

Emberek tábla

eid | Szulnev | szuldatum | neme |
3 | Kovács Géza| 1978.11.02 | 1|
4 | Kovács István| 1950.01.02| 1|

És a a kapocs táblából kiderül, hogy a hivó K. Géza a hivott K. Istvánnak a fia.

Ezzel az elrendezéssel az a hiba, hogy ha le akarod futtatni kinek ki volt az x. generációs rokona, akkor vagy x-1 szer kérdezed le vagy x-1 szer egymásba ágyazod, amit nem tudom, hogy Base tud e kezelni, mert én igazából szerveres adatbázisokon dolgozom ( PostgreSQL ), és az ottani SQL ben van erre lehetőség.
Ms Windows XP • 3.0.X • Ubuntu 7.x
Szergio
Önkéntesek
Hozzászólások: 71
Csatlakozott: 2008. március 13., csütörtök 16:11

Re: Család nyilvántartás

Hozzászólás Szerző: Szergio »

Köszönöm szépen a részletes útbaigazítást!!! (próbálom átrágni magam rajta ... s ha valami kérdés van, akkor visszajövök ;-))

Addig is, egy - lehet banálisnak tűnő - kérdés: egy meglévő táblába hogyan tudok új oszlopot beilleszteni, ill. van-e lehetőség egy adott tábla bizonyos oszlopa nevének a megváltoztatására?
Ubuntu 20.04 • Libreoffice 7.6 • Windows 11
Avatar
g_123_wert
Önkéntesek
Hozzászólások: 71
Csatlakozott: 2008. február 29., péntek 21:58

Re: Család nyilvántartás

Hozzászólás Szerző: g_123_wert »

Szia!

Önszorgalomból megcsináltam neked amit előadtam :)

Kicsit megszenvedtem, mert az automatikus sorszámozású típus a Base által is használt HSQLDB motorban az IDENTITY típus. Base -ban viszont a táblába Egész típust kell felvenni és az automatikus sorszámozást be kell pipálni. De azért rájöttem. :)
Csatolmányok
csalad.odb
(4.5 KiB) Letöltve 184 alkalommal.
Ms Windows XP • 3.0.X • Ubuntu 7.x
Válasz küldése