[Access/SQL] dubbele relatie

Pagina: 1
Acties:

  • Liqued
  • Registratie: Februari 2001
  • Laatst online: 09-01 18:51
Ik wil een db relatie maken waarin een gebruiker gekoppeld wordt aan een andere gebruiker. Heb van te voren het ontwerp proberen te simuleren in access (ipv mysql), maar krijg ik de foutmelding "relatie bestaat al".
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
tabel: gebruikers
key:   id

tabel: netwerkrelatie
key:   gebruikersid 1, gebruikersid 2
+-------------------+      +-------------------+ 
| gebruikers        |      | netwerkrelatie    | 
+-------------------+      +-------------------+ 
| id                |\-----| gebruikersid 1    |
| wachtwoord        | \----| gebruikersid 2    | 
| naam              |      +-------------------+ 
| etc               |      
+-------------------+


Snap niet helemaal waarom ie dat doet. Klopt hier door de relatie wel? Of is er misschien een nettere manier om dit te doen?

[ Voor 5% gewijzigd door Liqued op 30-08-2005 12:16 ]


  • Cavorka
  • Registratie: April 2003
  • Laatst online: 27-03-2018

Cavorka

Internet Entrepreneur

Wat is precies je probleem? Die melding van je simulatie? Kan je niet gewoon die DB's maken en dan gaan wat queries uitvoeren en kijken of je het verwachte en gewenste resultaat eruit krijgt?

Ik bedoel deze twee tabellen zijn nou niet echt de meest ingewikkelde ever, dus gewoon die tabellen maken en prutsen zou ik zeggen. Lijkt me nou niet echt dat er veel mis kan gaan hier.

the-blueprints.com - The largest free blueprint collection on the internet: 50000+ drawings.


Verwijderd

Moet netwerkrelatie ook niet een id hebben?
Daarnaast moet je natuurlijk gewoon 2 vreemde sleutels kunnen hebben lijkt me.

Probeer het net in MS Access 2003.
Hij geeft idd aan dat er al een relatie bestaat en vraagt dan of je deze wilt wijzigen of niet.
als je ervoor kiest om dat niet te doen, dan maakt hij een nieuwe instantie aan (of hoe noem je dat) van de gebruikerstabel. Das dus gewoon goed.

Als je met MySQL gaat werken, maakt dit allemaal niets uit natuurlijk.
Dus je kunt jouw model volgens mij gewoon implementeren.

[ Voor 63% gewijzigd door Verwijderd op 30-08-2005 12:29 ]


  • Woy
  • Registratie: April 2000
  • Niet online

Woy

Moderator Devschuur®
Verwijderd schreef op dinsdag 30 augustus 2005 @ 12:24:
Moet netwerkrelatie ook niet een id hebben?
Daarnaast moet je natuurlijk gewoon 2 vreemde sleutels kunnen hebben lijkt me.
Hoeft niet perse. Je PK kan natuurlijk ook bestaan uit de combinatie van de 2 FK's

In princiepe mag dat wel gewoon wat je wilt doen. Probeer je niet per ongeluk nog een keer dezelfde relatie toe te voegen in plaats van de relatie naar de tweede FK?

“Build a man a fire, and he'll be warm for a day. Set a man on fire, and he'll be warm for the rest of his life.”


  • NMe
  • Registratie: Februari 2004
  • Laatst online: 19-08 12:58

NMe

Quia Ego Sic Dico.

Verwijderd schreef op dinsdag 30 augustus 2005 @ 12:24:
Moet netwerkrelatie ook niet een id hebben?
Hoeft niet, een relatie tussen twee mensen is in dit geval waarschijnlijk ook al uniek. Al geven veel mensen inderdaad de voorkeur aan een extra id-veld. :)
Daarnaast moet je natuurlijk gewoon 2 vreemde sleutels kunnen hebben lijkt me.
Lijkt me ook. MySQL zal het ook zonder meer pikken; ik heb vaak genoeg dergelijke opzetten gemaakt in MySQL. Access zou dit verder ook moeten pikken, dus wat dat betreft is het vreemd.

Trouwens, waarom staat er MySQL in de topictitel als het probleem in Access zit?

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


Verwijderd

Dat legt ie toch uit?
"Heb van te voren het ontwerp proberen te simuleren in access (ipv mysql)"

  • Woy
  • Registratie: April 2000
  • Niet online

Woy

Moderator Devschuur®
Ik heb het net even in Acces geprobeerd en ik kan gewoon een dubbele relatie maken.

Hij geeft idd de melding dat er al een relationship is als je er een 2e bij wil maken en of je die wil editen. Bij het editen kan je in dat window dan gewoon meerdere relations invoeren.

[ Voor 54% gewijzigd door Woy op 30-08-2005 12:33 ]

“Build a man a fire, and he'll be warm for a day. Set a man on fire, and he'll be warm for the rest of his life.”


  • Liqued
  • Registratie: Februari 2001
  • Laatst online: 09-01 18:51
rwb schreef op dinsdag 30 augustus 2005 @ 12:31:
...
Hij geeft idd de melding dat er al een relationship is als je er een 2e bij wil maken en of je die wil editen. Bij het editen kan je in dat window dan gewoon meerdere relations invoeren.
Als ik hem aanmaak, dan maakt hij automatisch een kopie van de gebruikerstabel om een tweede relatie aan te maken. Of hij maakt er een 1 op 1 relatie van (wat ook niet wil lukken want dan geeft ie de foutmelding "kan geen relatie maken waarvoor referentiële integriteit moet worden afgedwongen").
ps. maak gewoon gebruik van access 2003

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 19-08 12:58

NMe

Quia Ego Sic Dico.

Klinkt als een eigenaardigheidje in Access, en niet als een probleem met SQL. We hebben tegenwoordig het subforum Officesuites en -software, daar hebben ze iets meer verstand van dit soort zaken. :)

PW>>OFF

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


  • kim72
  • Registratie: Oktober 2001
  • Laatst online: 15-03 16:41
Mag je wel een spatie gebruiken in een veldnaam? Probeer het eens met gebruikersid1 en gebruikersid2.
Het kan zijn dat ie alles na de spatie negeert en dan krijg je bij de tweede natuurlijk de melding dat ie al bestaat.

  • Woy
  • Registratie: April 2000
  • Niet online

Woy

Moderator Devschuur®
Ik heb hier ook Access 2003 en je kan bij het aanmaken van een ralatie gewoon meerdere velden opgeven. Dan werkt het bij mij gewoon goed. Denk toch dat jij wat anders doet.

“Build a man a fire, and he'll be warm for a day. Set a man on fire, and he'll be warm for the rest of his life.”


  • Lustucru
  • Registratie: Januari 2004
  • Niet online

Lustucru

26 03 2016

Access geeft meerdere relaties tussen twee tabellen inderdaad weer dmv tabelaliassen. Dat is verder niet iets om wakker van te liggen. :)
Als acces de melding geeft dat relationele integriteit niet afgedwongen kan worden ontbreekt of een index, of je hebt al gegevens ingevoerd die de relationele integriteit schenden.

De oever waar we niet zijn noemen wij de overkant / Die wordt dan deze kant zodra we daar zijn aangeland

Pagina: 1