Hogy lehet két tábla kapcsolába írni?
[EntityFramework][SQL]
Két tábla many to many kapcsolattal összevan kötve.
Amikor a Modelből legeneráltam az adatbázist létrejött a 3. tábla is, ami tartalmazza a két entitásnak az idegen kulcsát.
Azt a 3. táblát sehogy sem lehet elérni.
Felviszek adatokat, még mind a két táblába pl
A tábla
id | nev
1 Valami
2 Masikvalami
B tábla
id | nev
1 Eszik
C tábla amit generált.
A tábla id | b tábla id
1 1 1
2 2 1
Ez több módon vannak leimplementálva.
Az EntityFramework-öt pont nem ismerem, de ezeket általában ManyToMany megközelítés, mivel te több-több-et akarsz megvalósítani. Itt az a helyzet, hogy a köztes táblát nem is kell elérned. Ha lekérdezed a Valami-t "1" ID-val, akkor a C tábla közvetítésével a B tábla adatait kapod. Ugyanígy, hogy ha A szerint törlöd B elemet, akkor B-ből kiveszi és C-ből is.
Szóval neked direktben a C-t sosem kell elérni. Szoktak hivatkozni a C-re "pivot" táblaként, ha nem csak kapcsolatot valósít meg hanem n:m-hez tartozó adatot is. Pl.: C(id INT, a_id INT, b_id INT, info TEXT)
De el kell érni direktbe és bele is kell írni. Hiszen az a lényeg, hogy van két táblám. Legyen mondjuk Hallgatok és Kurzusok. Egy hallgato több kurzushoz is tartozik és egy Kurzushoz több hallgató is. Ha nem töltöd fel a C táblát nem tudod melyik hallgató, melyik kurzushoz tartozik.
Tehát például
A tábla
id|Nev
1 Pista
2 Jenő
B tábla
id|Nev
1 Adatbazisok
2 Analízis
C tábla így nézne ki:
A_id|B.id
1 1
1 2
2 1
Tehát Pista és Jenő Adatbázisokon is vannak, De Pista még analízisen is.
Szóval muszáj beleírni, hogy melyik-melyik. De ez sehogy se megy.
Ezt is végigbogarásztam már és stackoverflown is voltak ilyen kérdések, de hiába...
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!