06. februar 2012 - 11:16Der er
8 kommentarer og 1 løsning
SQL der ikke kan opdatere
Hej
Jeg har 2 tabeller: personer og datoer
Personer-tabellen indeholder to felter: ID og navn Datoer-tabellen indeholder 2 felter: ID_person og dato
det er meningen at en person skal kunne have mange datoer i datoer-tabellen.
Jeg skal nu lave et udtræk, hvor hver person bliver vist med den yngste dato fra datoer-tabellen.
SQL-sætningen ser således ud: SELECT datoer.ID_Person, Max(datoer.dato) AS MaxOfdato, personer.navn FROM personer INNER JOIN datoer ON personer.ID = datoer.ID_Person GROUP BY datoer.ID_Person, personer.navn;
Det virker fint, MEN... Jeg kan ikke ændre indholdet af navn-feltet i forespørgslen. Når jeg således viser indholdet i en formular kan navnet ikke ændres, hvilket det skal kunne. Hvordan kan jeg få den til det ?
Du er nødt til at fjerne grupperingen hvis du vil rette en post. Det er svært at sige hvilke muligheder du har, da jeg jo ikke kender din db, eller hvad du vil opnå.
Jeg har forsøgt at beskrive det i første post, men jeg prøver lige på en anden måde:
Jeg skal have en formular med oplysninger om en person. Langt de fleste data stammer fra en tilsvarende tabel, så dem er der ingen problemer med. Men 'en af oplysningerne er en dato. Den skal findes i tabel, hvor der for hver person kan være mange datoer. Den skal så blot vise den nyeste/højeste dato. Formularen skal bruges til redigering af person data (undtagen datoen) der vil være skrivebeskyttet (skal ændres i en anden formular)
Hvis hver enkelt post er identificeret med et nr (nøgle), vil jeg da tro, at du kan arbejde med en fortløbende formular, der er sorteret faldende efter dato. Eller også vælge hvilken post du vil arbejde med (redigere), og derefter finden posten i en anden formular med denne:
Hvis jeg bare sætter det sammen i en formular får jeg den samme person vist en masse gange (antallet af gange er lig med antallet af datoer for hver enkelt person). Det er ikke rigtig brugbart...
Den anden løsning med en ekstra formular til editering vil jeg absolut også undgå, da det ikke er i tråd med resten af applikationen.
Er der en måde hvor man kan få en Forespørgsel til at vise persondata samt den nyeste dato fra den anden tabel (og hvor man kan editere i dataene ?) denne forespørgsel vil så kunne bruges i en formular...
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.