da97enlaMedlem sedan dec. 2001343 inlägg Hej
Jag försöker fräscha upp mitt minne när det gäller access. Jag har tre tabeller:
login: idnr*, name, passw
bild_inlog: idnr, bildnr
bild:bildnr*, bild
Nu vill jag skapa en ny tabell som ska heta meny, denna ska beroende på användare se olika ut.
ska jag göra två nya tabeller såhär?:
meny: menynr*, meny
meny_inlog: idnr, menynr
Är jag på rätt spår?
mvh
Enla
Flyttad från Kontorsprogram
Engine^Medlem sedan dec. 20003 887 inlägg Du kan vara på rätt spår - det beror ju faktiskt på vad du är på jakt efter :OO
Som jag tolkar det ser det ut som om du vill att menyalternativen ska bero på vilken användare det är som är inloggad.
da97enlaMedlem sedan dec. 2001343 inlägg --> Engine det är precis det jag vill, men hur går jag vidare? Jag har kopplat tabellerna till varandra, tabell login:idnr till tabell meny_inlog:idnr. Från tabellen meny_inlog:menynr till tabellen meny:menynr
I tabellen meny kanske jag ska ha ett fält med url också, menyn ska ju vara klickbar.
Hoppas du förstår vad jag menar!
Enla
Engine^Medlem sedan dec. 20003 887 inlägg För det menysystemet räcker det ju faktiskt med tre tabeller...
tblMenu
intMenuID
strMenuText
strMenuUrl
tblUsers
intUserID
...
tblUsermenu
intUserID
intMenuID
Jag har ett liknande system på min sida, men det har jag löst med två tabeller. Den styrande delen är att varje menypost i menytabellen har en kolumn intRequiredLevel och varje användare har en intUserLevel. När jag skapar menyerna hämtar jag menyalternativen med denna fråga (ungefär)
SELECT strMenuText, strMenuUrl FROM tblMenu WHERE intRequiredLevel <= [CurrentUsersLevel]
och då räcker det med två tabeller
tblMenu
intMenuID
intRequiredLevel
strMenuText
strMenuUrl
...
tblUsers
intUserLevel
...
da97enlaMedlem sedan dec. 2001343 inlägg Ok, men jag fick det att funka, fast det kanske inte är en bra lösning?
Så här ser min SQL sats ut:
SELECT * FROM [meny] INNER JOIN (login INNER JOIN meny_inlog ON login.idnr = meny_inlog.idnr) ON meny.menynr = meny_inlog.menynr WHERE login.idnr=" & Session("idnr")
Är din tblUser detsamma som min tabell login?
Engine^Medlem sedan dec. 20003 887 inlägg Ju färre tabeller du måste blanda in i en fråga ju snabbare kan frågan returnera ett resultat och om det är många användare är prestanda viktigt ;)