03. april 2008 - 21:13Der er
7 kommentarer og 1 løsning
En midlertidig tabel og flere brugere - hvordan gør man det ?
Jeg er ved at lave en multibruger DB.
In bruger skal indtaste lidt data, hvorpå der foretegs lidt beregninger som producerer data svarende til en lille tabel. Der er flere linjer, hvor hver beregnes forskelligt og der bliver kaldt forskellig kode til hver linje.
Den uigennemtænkte plan var, at lave en fast tabel i DB'en, lægge resultaterne i den, og så vise den på den den form som brugeren tastede de enkelte data ind i.
Men hvordan pokker gør man det hvis man har flere brugere og kun een table i DB'en ? Jeg kan jo vist risikere lidt sammenblandede resultater. (Jeg kunne i princippet lave tekst felter og lægge data ned i dem på formen, men det er bare så meget nemmere bare tage en tabel og vise den)
Er jeg helt galt afmarcheret ? Skal man lave en temp table til hver bruger, eller lægge et sæt af resultater med en eller anden GUID hægtet på eller noget helt tredje ? Jeg har nu totalt forvirret mig selv - HJÆLP !:)
Der skal foretages en beregning baseret på den enkelte brugers input
Beregningerne bør du lave i din forespørgsel ved hjælp af udtryk f.eks.:
Udtryk1: [Felt1]+[Felt2]
M.h.t. til at få forskellige resultater afhænger dette af hvad du vil med resultaterne. Skal de gemmes under de enkeltes brugernavne, bør du oprette et felt der identificerer brugeren. Skal de ikke gemmes, er det jo ligegyldigt hvor du lægger beregningerne. Brugeren kan du identificere med denne:
Problemet ligger i at jeg IKKE kan køre en forespørgsel,fordi beregningerne kræver for meget logik til at man kan lave det overskueligt i SQL (der er en masse LOOK UP involveret + logik).
Min tanke var at simpelthen fylde på i en tabel fra en ende af.
Måske kan jeg bruge din ide med at bruge Environ("Username") i en ekstra kolonne i tabellen - eftersom hver bruger kun har ET sæt af resultater (indtil han taster noget andet), så kunne det jo virke. Har du en mening om dette ?
Synes godt om
Slettet bruger
03. april 2008 - 21:35#3
Det lyder som om det er oplagt at bruge environ!~)
Jeg har ikke informationer nok til at gtive et bud på, om du kan køre en forespørgsel. Men da du selv tilkendegiver, at det kan du ikke, vil jeg lade det blive ved det.
Hvis en bruger skal kunne overskrive sin egen tidligere indtastning kræver det jo, at du har et effektivt logon system. Derefter skal db finde brugeren der svarer til longon navnet og give tilladelse til at overskrive foregående indtastning. Det er der vel ikke noget galt i.
Resultaterner ER midlertidige, så skal ikke gemmes som så. Men, fordi jeg er doven og hellere vil lægeg hele flokkeind i en tabel end i form-felter, så må jeg bare opdatere eksisterende eller inserte nye resultater for hver gang (hvis brugeren ikke har nogen resultater fra sidste gang)
Jeg kæmper videre med din Environ-tingest- så længe folk ikke samtidigt kører to instances af min applikation under eget login så burde det kunne gå.
Du kunne jo også installere en frontend på hver brugers pc og så lad dem benytte en tabel, som lå i frontenden. Så er tabellerne jo 100% adskilt; men da de jo har samme navn allesammen, kan de kaldes fra samme kode. Når alle data er klar, kan du overføre dem til "moderen" i backenden.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.