Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien

[Access 2007] hulp bij ontwerp database/relaties

Pagina: 1
Acties:

  • dj_vibri
  • Registratie: Oktober 2007
  • Laatst online: 09-11 16:24

dj_vibri

int(e^x) = f(u)^n

Topicstarter
Allen,

voor een analyse te maken ben ik via Access een draft versie aan het creëren van database structuur (incl. relaties). Er zijn verschillende tabellen aanwezig, maar hier gaat het over slechts 3 tabellen: tblKlanten, tblPostCode,tblGemeente....

Ik denk dat het voor zich spreekt wat net de bedoeling is :) in ieder geval een overzichtje van wat ik reeds heb:

tblKlanten: ID (PK), voornaam, Achternaam, PostCodeID, GemeenteID
tblPostCode: ID(PK), Postcode, GemeenteID
tblGemeente: ID(PK), Gemeente

de veldnamen spreken voor zich van hoe de relatie's gelegd zijn....

Nu zou het de bedoeling zijn, via SQL express bij het ontwikkelen maar dit terzijde, dat wanneer een eindgebruiker een klant wil toevoegen/wijzigen etc.... en hij de postcode invult automatisch de bijhorende gemeenten weergeeft. Kiest hij eerst een gemeente wordt er slechts 1 postcode weergegeven maw

* Er kunnen meerdere gemeenten per postcode zijn MAAR slechts 1 gemeente per postcode*
Heb nu al wat zitten prullen via Access, maar ik krijg het niet voor elkaar om deze verschillende relatie-typen aan te maken.....

Iemand een idee?

En dan nog een bijkomend vraagje: klopt de tabelstructuur voor hetgeen ik wens? ik heb al zitten testen maar ik heb een vermoeden dat ik in de tblGemeente ook een veld 'PostCodeID' moet aanmaken maar dan krijg ik een fout van access dat er al een relatie bestaat tussen deze twee tabellen (nl. tblPostcode.GemeenteID -> tblGemeente.ID) ......

Enige opmerkingen oid omtrent de opzet hiervan is meer dan welkom!

Last night I lay in bed looking up at the stars in the sky and I thought to myself, where the heck is the ceiling.


  • dj_vibri
  • Registratie: Oktober 2007
  • Laatst online: 09-11 16:24

dj_vibri

int(e^x) = f(u)^n

Topicstarter
Update:

Had een serieuze fout gemaakt met de relatie's...

Ipv in TblPostcode een referentie naar Gemeente te hebben is het net omgekeerd.

Hoe ik het nu heb:

tblklanten: Id, voornaam,Achternaam,GemeenteID
tblGemeente: Id, Gemeente, PostCodeID
TblPostcode: Id, PostCode

op deze manier kan ik slechts één postcode per gemeente hebben maar meerdere gemeentes per postcodes.... *jeeuuuj* :)

Last night I lay in bed looking up at the stars in the sky and I thought to myself, where the heck is the ceiling.


  • brid
  • Registratie: Januari 2001
  • Laatst online: 19-11 18:24

brid

Onze excuses voor het ongemak

even de relatie tussen de 2 relaties aanklikken en dan aanpassen, je kunt dan kiezen of het standaard/left/right join is ;)

DIY NAS, Hoofd PC
Unchain your pc/laptop, buy a SSD!!!!!


  • F_J_K
  • Registratie: Juni 2001
  • Niet online

F_J_K

Moderator CSA/PB

Front verplichte underscores

Of een postcode altijd binnen 1 gemeente ligt weet ik niet zeker maar een beetje gemeente heeft vele verschillende postcodes. In Nederland dan, misschien ben je Belg, ik weet niet hoe het daar gebeurt.

Maar als het in Belgie inderdaad zo gaat, zit je zo goed. In Nederland zou ik het dus net andersom doen (klant -> postcode -> gemeente).

'Multiple exclamation marks,' he went on, shaking his head, 'are a sure sign of a diseased mind' (Terry Pratchett, Eric)


  • jbdeiman
  • Registratie: September 2008
  • Laatst online: 29-11 08:17
EUh, nu ga je wel heel erg de fout in geloof ik dj_vibri.

Een gemeente kan meerdere postcodes hebben, de gemeente Raalte waar ik woon bijvoorbeeld:
8055 Laag Zuthem
8101 Raalte
8102 Raalte
8103 Raalte
8105 Luttenberg
8106 Mariënheem
8107 Broekland
8111 Heeten
8112 Nieuw Heeten
8141 Heino
8144 Lierderholthuis

Dit valt allemaal onder dezelfde gemeente, in dit geval Raalte. Een postcode echter hoort wel bij een bepaalde plaats voor zover ik kan nagaan. (geloof me, ik weet er niet alles van, maar dat is wat ik in een kort onderzoekje heb kunnen vinden) Je 1e relatie leek me wat dat betreft veel logischer.

Een dubbele relatie aanmaken tussen 2 tabellen kan en hoort niet, daar heeft Access wel gelijk in. Bij een goed genormaliseerde opzet is er tussen 2 tabellen altijd maar 1 relatie. Je 1e opzet was wel de juiste, maar je moet een postcode invullen welke allemaal bij 1 plaats (volgens mij, maar niet zeker) dan wel gemeente (wel zeker) hoort.
Je zal dus een postcode invullen, en dan automatisch de bijbehorende gemeente krijgen, of (volgens mij wat jij wilt) de gemeentenaam invullen en dan de lijst met postcodes beperken tot de lijst met postcodes uit die gemeente. Je krijgt dus nog wel een keuzelijst.

Het lijkt mij slimmer om iemand de postcode van 4 cijfers in te laten vullen (sneller dan het invullen van een plaats dan wel gemeentenaam) Er komt dan altijd maar 1 gemeentenaam uit die automatisch kan worden ingevuld. Andersom, van gemeente naar postcode heb je meerdere postcodes die mogelijk zijn. Dat is dan dus naast het extra typen ook nog een extra keuzelijst invullen. Ik neem aan dat het invullen zo gemakkelijk mogelijk moet zijn?

[ Voor 45% gewijzigd door jbdeiman op 10-07-2009 10:57 ]