PeddaMedlem sedan juni 20006 032 inlägg Får inte till min query.
Jag har fyra tabeller i en Access databas enligt följande struktur:
Konton
---------------
KontoID
KontoNamn
RefTypID // referens till Typer - TypID
Typer
---------------
TypID
TypNamn
Innehall
---------------
InnehallID
RefModellID // referens till Modeller - ModellID
RefKontoID // referens till Konton - KontoID
InnehallVarde
Modeller
---------------
ModellID
ModellNamn
Jag vill hämta allt i Konton och Typer plus innehallVarde från Innehall där RefModellID har ett specifikt värde.
Peter SMedlem sedan dec. 20025 483 inlägg select k.*
, t.*
, i.innehallVarde
from (konton k
inner
join typer t
on k.reftypid = t.typid)
inner
join innehall i
on k.kontoid = i.refkontoid
where i.refmodellid = <value>
PeddaMedlem sedan juni 20006 032 inlägg Funkade fint.
Nu ska jag bara fixa en till query som ska hämta all data när jag har ett KontoID.
Alltså hämta allt i Konton,
TypNamn i Typer enligt referensen,
alla InnehallVarde i Innehall enligt referensen (Kan vara flera referenser till Konton)
alla Modellnamn i Modeller enligt referensen (Kan vara flera referenser till Innehall)
Går det att fixa i en query eller är jag tvungen att dela upp i flera?
Peter SMedlem sedan dec. 20025 483 inlägg select k.*
, t.typnamn
, i.innehallVarde
, m.modellnamn
from ((konton k
inner
join typer t
on k.reftypid = t.typid)
inner
join innehall i
on k.kontoid = i.refkontoid)
inner
join modeller m
on i.refmodellid = m.modellid
where k.kontoid = <value>
PeddaMedlem sedan juni 20006 032 inlägg Tyvärr, får OleDbExeption på den queryn.
"Det har inte angetts något värde för en eller flera nödvändiga parametrar."
Peter SMedlem sedan dec. 20025 483 inlägg SQL-frågan ser korrekt ut. Testa att köra den direkt i Access. Kontrollera namnen på parametrarna i .NET-applikationen.
PeddaMedlem sedan juni 20006 032 inlägg Kör jag frågan i Access så promptar den att den vill ha m.modellnamn som inparameter :q
@ndersMedlem sedan juni 200032 969 inlägg Heter fältet verkligen så då? :)
PeddaMedlem sedan juni 20006 032 inlägg japp.
Testade att hämta med allt (*) från alla tabeller, och då verkar det funka.
Men en fundering. Funkar det verkligen sen när jag ska publicera resultatet?
Jag har ju bara ett KontoNamn som bara ska presenteras en gång och t.ex ModellNamn kan ju flera knutna till den.
Peter SMedlem sedan dec. 20025 483 inlägg Om så är fallet måste du bestämma dig för vilka kriterier som skall uppfyllas för den rad du vill visa. För samtliga träffar för ett specifikt kontonamn är väl inte (alltid) identiska?