Relaties
Een relatie is een performante manier om uw gegevens te structureren en te organiseren. Met behulp van relaties kunt u gegevens in een of meer
tabellen samenvoegen op basis van gemeenschappelijke veldwaarden, verschillende veldwaarden of een vergelijking van de waarden in twee of meer velden.
•
|
Ontwerp een relationele database bestaande uit een of meer tabellen in een of meer bestanden, die gezamenlijk alle gegevens bevatten die u nodig hebt. Gegevens komen altijd slechts in één tabel tegelijk voor. U kunt deze gegevens echter vanuit elke gerelateerde tabel opvragen en erin weergeven. U kunt al uw gerelateerde gegevens wijzigen en de wijzigingen die u aanbrengt, worden doorgevoerd op alle plaatsen waar de gerelateerde gegevens worden gebruikt.
|
•
|
Definieer een opzoekdefinitie om gegevens uit een gerelateerde tabel naar een veld in de doeltabel te kopiëren. De gekopieerde gegevens zijn nu opgeslagen op twee locaties, alsof u de gegevens hebt gekopieerd en in een doelveld hebt geplakt. De opgezochte gegevens zijn bijgewerkt op het ogenblik dat u deze kopieert, maar na het kopiëren zijn dit statische gegevens, tenzij de informatie automatisch wordt opgezocht of u de zoekopdracht zelf opnieuw uitvoert.
|
Zo bevat een typische database van verkoopgegevens bijvoorbeeld de volgende tabellen: een tabel Facturen, waarin voor elke factuur een record wordt bijgehouden; een tabel Producten, waarin de producten en hun recentste prijzen zijn opgeslagen; en ten slotte een tabel Artikelen, waarin de verkoopgegevens voor elk item op de factuur zijn opgeslagen, met inbegrip van het artikel dat werd verkocht, de hoeveelheid en de eenheidsprijs voor de desbetreffende verkoop. Omdat facturen een combinatie vormen van dynamische en statische gegevens, gebruikt u zowel gerelateerde velden als zoekopdrachten om uw gegevens weer te geven. De records uit de tabel Artikelen worden dynamisch weergegeven, in een
portaal van de lay-out Facturen, maar de werkelijke verkoopprijs voor elk artikel wordt ingevuld door een zoekopdracht uit te voeren, zodat de totale bedragen op de factuur steeds dezelfde zijn, ook wanneer de prijzen in de toekomst zouden worden gewijzigd.
U maakt een relationele database door een relatie tussen twee velden te definiëren, die we de vergelijkingsvelden noemen. Deze velden kunnen zich in verschillende tabellen bevinden, maar kunnen ook in dezelfde tabel staan (een zogeheten
interne relatie). U kunt de gerelateerde gegevens opvragen wanneer de waarde in de vergelijkingsvelden aan de ene zijde van de relatie overeenstemt met een waarde in de vergelijkingsvelden aan de andere zijde van de relatie, afhankelijk van de vergelijkingscriteria die u voor deze relatie hebt gedefinieerd.
Nadat u een relatie hebt gedefinieerd, kunt u de velden in de gerelateerde tabel gebruiken op precies dezelfde manier als de velden in de huidige tabel: voor de weergave van gegevens in een bepaalde lay-out, als informatie die wordt gebruikt in een berekeningsformule, in een script, als een vergelijkingsveld voor een andere relatie, enzovoort.
Wanneer u gerelateerde gegevens in een portaal weergeeft, worden de waarden van alle gerelateerde records getoond, in overeenstemming met de
toegangsprivileges van de gebruiker. Bevindt het gerelateerde veld zich niet in een portaal, dan wordt de waarde van de eerste gerelateerde record weergegeven. Zie
Portalen maken om gerelateerde records weer te geven voor meer informatie.
Opmerking Gebruik toegangsprivileges in de brontabel om de toegang tot gerelateerde gegevens te beperken of te verhinderen. Gebruikers die willen nagaan welke gerelateerde velden in een relatie zijn gedefinieerd, moeten bijvoorbeeld beschikken over toegangsprivileges om een gerelateerd vergelijkingsveld te kunnen zien. Zie
Privilegesets maken en beheren voor meer informatie.
U kunt gerelateerde velden sorteren voordat deze worden weergegeven. Wanneer u een gerelateerd veld rechtstreeks op een lay-out plaatst, ziet u de waarde van de eerste gerelateerde record in de opgegeven sorteervolgorde (bijvoorbeeld de laagste of hoogste waarde). Wanneer u gerelateerde velden in een portaal weergeeft, verschijnen de gerelateerde records in de sorteervolgorde die aan het portaal is toegewezen. Deze sorteervolgorde heeft voorrang op elke andere sorteervolgorde die in de gedefinieerde relatie is opgegeven.