Avatar billede eco2001 Nybegynder
09. juli 2002 - 11:05 Der er 11 kommentarer og
1 løsning

Sammenkædet database

Jeg er ved at lave en ACCESS-database og jeg behøver en måske lidt speciel konstruktion.
Jeg laver en database over potentielle overnatningssteder, hvortil der er adresse, map, kontaktperson, nuværende priser etc.
Hertil vil jeg så gerne kunne se hvem der har boet hvornår på det enkelte overnatningssteder.

Det jeg har gjort nu - er at lave en formular med hver overnatningssted som post. Derefter har jeg lavet en formular til hver enkelt "overnatter"... skal disse så kædes sammen - eller skal det gøres på en anden måde?

Håber det er forståeligt...
Avatar billede susanne_larsen Nybegynder
09. juli 2002 - 11:10 #1
...kan du ikke prøve at uddybe hvilke tabeller du har samt feltnavne
Avatar billede eco2001 Nybegynder
09. juli 2002 - 11:18 #2
Jo, 2 tabeller:

Overnatning og medarbejdere:

- Overnatning:
navn, adresse, tlf og andre info om stedet, samt et bitmap-kort over stedet. Endvidere er der et felt der hedder max. pladser og ledige pladser
alt dette er (pånær de sidste to) "statiske" data som næppe bliver ændret.
- Medarbejdere:
Den anden database indholder felterne: navn på medarbejder, medarbejdernummer og hhv. opholdsstart og opholdsslut

Jeg vil gerne have at der genneres en formular hvor jeg kan se oplysninger om stedet, samt de folk som overnatter der / har overnattet der...
Avatar billede susanne_larsen Nybegynder
09. juli 2002 - 11:20 #3
...og jo de enkelte tabeller skal kædes sammen vha relationer - hvor du forbinder de enkelte tabeller ved at trække relationer fra primærnøgle i moder-tabellerne (hovedtabellerne) til fremmednøgler barntabellerne :)
Avatar billede eco2001 Nybegynder
09. juli 2002 - 11:30 #4
Jeg har kædet et navnet på overnatningsstedet sammen, idet man ved foldud-menu kan vælge hvilket sted medarbejderens overnatning skal være tilknyttet
Avatar billede susanne_larsen Nybegynder
09. juli 2002 - 11:44 #5
....2 tabeller er ikke nok, og indholdet i de 2 tabeller skal flyttes lidt rundt

du skal min have 3

har du 2 databaser ?? hvorfor? er ikke nødvendigt når du bruger Access der kan håndtere et enormt antal tabeller som så linkes sammen

du har normalt kun brug for 2 databaser hvis du splitter op i en front- og en backend

Du har felterne "ledige pladser" samt "max pladser" - her er mit umiddelbare bud at du skal have noget kode der opdaterer dit felt "ledige pladser" og holder det op imod "max pladser" - MEn du skriver at disse data er statiske - her er jeg ikke helt med....

ok jeg foreslår at du opretter flg 3 tabeller

tblOvernatning
- OvernatningsID (nyt felt P-nøgle)
- navn
- adresse
- tlf
- og andre info om stedet
- samt et bitmap-kort over stedet.
-  max. pladser
- ledige pladser


tblMedarbejdere
- medarbejdernummer (p-nøgle)
- navn på medarbejder


tblMedarbejderOvernatning
MedarbejdernrRef (p-nøgle fra tblMedarbejdere)
OvernatningsIDRef (p-nøgle fra tblOvernatning)
Opholdsstart
Opholdsslut
Avatar billede susanne_larsen Nybegynder
09. juli 2002 - 11:48 #6
når du opretter den 3 tabel skal du være obs på at du skal vælge samme datatype som du har brugt i de 2 andre tabeller

ex har du i tblOvernatning sat OvernatningsID til autonummerering skal datatypen på feltetOvernatningsIDRef i tblMedarbejderOvernatning også være autonummerering, ellers kan du ikke oprette relationerne.

Jeg går ud fra at du godt ved hvordan man opretter primærnøgler - er det rigtigt ?
Avatar billede susanne_larsen Nybegynder
09. juli 2002 - 12:06 #7
når du har dine tabeller på plads skal du have oprettet relationerne mellem dem

- gør flg
Vælg Funktioner/relationer og du får Access relationsvindue frem

du skal nu have hentet dine tabeller ind i vinduet - højreklik i vinduet og vælg "vis tabel" og tilføj dine 3 tabeller

så skal du have oprettet relationer mellem dine tabeller

klik på tblOvernatning - klik på feltet OvernatningsID, hold venstre mus nede og træk over til feltet OvernatningsIDRef i tblMedarbejderOvernatning. Der popper et vindue frem hvor du skal vælge "gennemtving referentiel intgritet" - i bunden af vinduet skulle der gerne stå "relationstype - En-til-mange", og klik så på OK.

klik på tblMedarbejdere - klik på feltet MedarbejderID, hold venstre mus nede og træk over til feltet MedarbejdernrRef i tblMedarbejderOvernatning.  Der popper et vindue frem hvor du skal vælge "gennemtving referentiel intgritet" - i bunden af vinduet skulle der gerne stå "relationstype - En-til-mange", og klik så på OK.
Avatar billede eco2001 Nybegynder
09. juli 2002 - 12:12 #8
Jeg prøver lige
Avatar billede eco2001 Nybegynder
09. juli 2002 - 15:11 #9
Havde lige nogle tilretninger - men det var de rigtigt retningslinier du gav mig... tusind tak!

Mvh.
Michael
Avatar billede susanne_larsen Nybegynder
09. juli 2002 - 15:46 #10
var da så lidt  - og takt for p :)
Avatar billede susanne_larsen Nybegynder
09. juli 2002 - 15:49 #11
takt = tak :)

hvad mht til dine felter "max pladser" og "ledige pladser" - har du fundet en metode til at styre så du ikke sætter booker et sted hvor der ikke er plads?
Avatar billede eco2001 Nybegynder
10. juli 2002 - 09:49 #12
Nej
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester