Ik kan mijn gerepliceerde database niet opslaan in Access 2007-indeling

Symptomen

In Microsoft Office Access 2007 kunnen gerepliceerde databases die zijn gemaakt in eerdere versies van Access (MDB-indeling) niet worden opgeslagen in de nieuwe ACCDB-bestandsindeling. De optie wordt lichter gekleurd (niet-beschikbaar) weergegeven wanneer u de opdracht Database opslaan als wilt gebruiken (klik op de Microsoft Office-knop Knopafbeelding en klik vervolgens op de pijl naast Opslaan als).

Oorzaak

De ACCDB-bestandsindeling biedt geen ondersteuning voor replicatie.

Oplossing

Gebruik de gerepliceerde database in de MDB-bestandsindeling

U kunt uw gerepliceerde databases in de MDB-bestandsindeling blijven gebruiken. De replicatiefunctie wordt nog steeds ondersteund voor de MDB-bestandsindeling.

Maak de database handmatig opnieuw in de Office Access 2007-bestandsindeling

Als u van mening bent dat de voordelen van replicatie niet opwegen tegen de voordelen van de nieuwe bestandsindeling, kunt u een nieuwe database maken in Office Access 2007-indeling en de gerepliceerde database handmatig opnieuw maken.

 Opmerking   Deze methode is geschikt voor elke gerepliceerde database, maar de nieuwe database zal geen gegevens en projecten bevatten die zich niet reeds in de replica bevonden, tenzij u werkt met een volledige replica die is gesynchroniseerd met alle andere replica's in de replicaset.

Voordat u de database opnieuw gaat maken, moet u ervoor zorgen dat alle verborgen objecten en systeemobjecten in de replica zichtbaar zijn. Op die manier zorgt u ervoor dat u toegang hebt tot de specifieke replicavelden in de replicatie wanneer u deze opnieuw maakt.

  1. Open de replica die u wilt converteren. Om de verborgen velden en systeemvelden weer te geven, moet u de replicatie openen met dezelfde versie van Access als die waarin de replica oorspronkelijk is gemaakt.
  2. Klik in het menu Extra op Opties. Het dialoogvenster Opties wordt geopend.
  3. Ga naar het tabblad Weergave en selecteer in de sectie Weergeven de opties Verborgen objecten en Systeemobjecten. Klik op OK om de nieuwe instellingen toe te passen en het dialoogvenster Opties te sluiten.

De database handmatig opnieuw maken

  1. Maak een lege database en open deze.

 Opmerking   In Access wordt een nieuwe, lege tabel met de naam Tabel1 gemaakt. Verwijder deze tabel door de tabel onmiddellijk te sluiten voordat u wijzigingen aanbrengt. Klik met de rechtermuisknop op het objecttabblad en kies Sluiten in het snelmenu.

  1. Klik op het tabblad Externe gegevens, in de groep Importeren, op Access.

Het dialoogvenster Externe gegevens ophalen - Access-database wordt weergegeven.

  1. Klik op Bladeren om de gerepliceerde database te zoeken.
  2. Klik op de gerepliceerde database die de databaseobjecten bevat die u opnieuw wilt maken in de nieuwe database. Klik vervolgens op Openen.
  3. Klik in het dialoogvenster Externe gegevens ophalen - Access-database op Tabellen, query's, formulieren, rapporten, macro's en modules importeren in de huidige database en klik op OK.
  4. Klik op de databaseobjecten die u wilt importeren in de nieuwe database. Als u alle objecten wilt importeren, klikt u op elk tabblad op Alles selecteren.

Belangrijk    Selecteer in dit stadium nog geen tabellen. In een volgende stap worden de tabellen opnieuw gemaakt.

  1. Klik op OK om de objecten te importeren als u klaar bent met het selecteren van objecten.

Op de laatste pagina van de wizard hebt u de mogelijkheid om de importstappen op te slaan voor toekomstig gebruik. Daartoe schakelt u het selectievakje Importstappen opslaan in, voert u de juiste gegevens in en klikt u op Import opslaan.

  1. Open de gerepliceerde database in Office Access 2007. Maak voor elke tabel in de gerepliceerde database een tabelmaakquery die alle gegevens uit de oude tabel haalt en in de nieuwe database een tabel met dezelfde gegevens maakt.

 Opmerking   Als het veld s_GUID (GUID: een veld van 16 bytes dat wordt gebruikt in Access-databases om een unieke id vast te stellen voor replicatiedoeleinden. GUID's worden gebruikt voor de identificatie van replica's, replicasets, tabellen, records en andere objecten. In Access-databases worden GUID's replicatie-id's genoemd.) een primaire sleutel is (en externe sleutels (refererende sleutel: een of meer tabelvelden (kolommen) die verwijzen naar het veld of de velden met de primaire sleutel in een andere tabel. Een refererende sleutel geeft de relatie tussen de tabellen aan.) in andere tabellen hiernaar verwijzen), is het raadzaam het veld s_GUID op te nemen in de nieuwe tabel. Als het veld s_GUID niet wordt gebruikt als primaire sleutel, heeft het geen zin dit veld in de nieuwe tabel te handhaven. Kopieer de velden s_Lineage en s_Generation niet naar de nieuwe tabel.

Standaard zijn de velden s_GUID, s_Lineage en s_Generation verborgen. Ga als volgt te werk om deze velden weer te geven:

  1. Zorg er in de gerepliceerde database voor dat alle tabellen zijn gesloten.
  2. Klik met de rechtermuisknop boven in het navigatiedeelvenster en klik op Navigatieopties. Het navigatiedeelvenster wordt geopend.
  3. Selecteer in het gedeelte Weergaveopties de optie Systeemobjecten weergeven en klik op OK.

WeergevenWerkwijze

  1. Maak een query door de tabellen te selecteren met de records die u wilt opnemen in de nieuwe tabel.

WeergevenWerkwijze

  1. Klik op het tabblad Maken in de groep Overige, op Queryontwerp.
  1. Klik in het dialoogvenster Tabel weergeven op het tabblad met de tabellen waarvan u de gegevens wilt gebruiken.
  2. Dubbelklik op de naam van elk object dat u aan de query wilt toevoegen en klik vervolgens op Sluiten.
  3. Voeg velden toe aan de rij Veld in het ontwerpraster (ontwerpraster: het raster waarmee u een query of filter ontwerpt in de ontwerpweergave van de query of in het venster Geavanceerde filter-/sorteeropties. Voorheen werd het ontwerpraster voor query's het QBE-raster genoemd.).
  4. Klik op het menu Beeld en vervolgens op Gegevensbladweergave om de queryresultaten te bekijken.

  1. Ga in de ontwerpweergave (ontwerpweergave: een weergave waarin het ontwerp wordt weergegeven van de volgende databaseobjecten: tabellen, query's, formulieren, rapporten en macro's. In de ontwerpweergave kunt u nieuwe databaseobjecten maken en het ontwerp van bestaande databaseobjecten wijzigen.) van de query naar het tabblad Ontwerpen en klik in de groep Querytype op Tabel maken. Het dialoogvenster Tabel maken wordt geopend.
  2. Typ in het vak Tabelnaam de naam van de tabel die u wilt maken of klik in de lijst op de naam van de tabel die u wilt vervangen.
  3. Klik op Andere database en typ vervolgens het pad naar de database waarin u de nieuwe tabel wilt opnemen of klik op Bladeren om de database te zoeken.
  4. Klik op OK.
  5. Klik op het tabblad Ontwerpen, in de groep Resultaten, op Uitvoeren. De nieuwe tabel wordt gemaakt.

 Opmerking   De veldeigenschappen of de instelling voor de primaire sleutel (primaire sleutel: een of meer velden (kolommen) waarvan de waarden elke record in de tabel uniek identificeren. Een primaire sleutel kan geen Null-waarden bevatten en heeft altijd een unieke index. Met een primaire sleutel relateert u een tabel aan refererende sleutels in andere tabellen.) van de oorspronkelijke tabel worden niet overgenomen door de nieuwe tabel die u maakt.


  1. Maak voor elke tabel in de nieuwe database dezelfde index (index: een functie waarmee u sneller kunt zoeken en sorteren in een tabel op basis van sleutelwaarden en waarmee u uniekheid kunt afdwingen voor de rijen in een tabel. De primaire sleutel van een tabel wordt automatisch geïndexeerd. Sommige velden kunnen op grond van het gegevenstype niet worden geïndexeerd.) en primaire sleutel als wordt gebruikt in de tabel in de replica.

WeergevenWerkwijze

  1. Open een tabel in de ontwerpweergave.
  2. Klik in het bovenste gedeelte van het venster op het veld waarvoor u een index (index: een functie waarmee u sneller kunt zoeken en sorteren in een tabel op basis van sleutelwaarden en waarmee u uniekheid kunt afdwingen voor de rijen in een tabel. De primaire sleutel van een tabel wordt automatisch geïndexeerd. Sommige velden kunnen op grond van het gegevenstype niet worden geïndexeerd.) wilt maken.
  3. Klik in het onderste gedeelte van het venster in het eigenschappenvak Geïndexeerd en klik vervolgens op Ja (duplicaten OK) of op Ja (geen duplicaten).
  4. Selecteer de velden die de primaire sleutel vormen.
  5. Klik op het tabblad Ontwerpen, in de groep Extra, op Primaire sleutel.

  1. Maak voor elke tabel in de nieuwe database dezelfde relaties (relatie: een verbinding tussen gemeenschappelijke velden (kolommen) in twee tabellen. Een relatie kan een-op-een, een-op-veel of veel-op-veel zijn.) als voor de replicatabel gelden.

WeergevenWerkwijze

Wanneer u een relatie tussen tabellen definieert, hoeven de gerelateerde velden niet dezelfde naam te hebben. Gerelateerde velden moeten echter wel hetzelfde gegevenstype (gegevenstype: het kenmerk van een veld dat bepaalt welk type gegevens daarin kunnen worden opgeslagen. Gegevenstypen zijn onder andere Booleaans, Integer, Lang, Valuta, Enkel, Dubbel, Datum, Reeks en Variant (standaardtype).) hebben, tenzij het primaire-sleutelveld een AutoNummering (gegevenstype AutoNumber: in een Microsoft Access-database is dit een veldgegevenstype waarmee automatisch een uniek getal wordt opgeslagen voor elke record die wordt toegevoegd aan een tabel. Er kunnen drie verschillende nummeringen worden gegenereerd: opeenvolgend, willekeurig en replicatie-id.)-veld is. Een AutoNummering-veld kunt u alleen aan een veld met het gegevenstype Numeriek koppelen als de instelling van de eigenschap Veldlengte van beide gekoppelde velden hetzelfde is. U kunt een AutoNummering-veld bijvoorbeeld aan een veld van het type Numeriek koppelen als de eigenschap Veldlengte van de beide velden Lange integer is. Zelfs als beide gekoppelde velden AutoNummering-velden zijn, moet de eigenschap Veldlengte voor beide velden dezelfde instelling hebben.

WeergevenEen een-op-veel- of een-op-een-relatie definiëren

  1. Sluit alle eventueel geopende tabellen. U kunt geen relaties instellen of wijzigen tussen geopende tabellen.
  2. Klik op het tabblad Databasehulpmiddelen, in de groep Weergeven/verbergen, op Relaties.
  1. Als u nog geen relaties in uw database hebt gedefinieerd, wordt het dialoogvenster Tabel weergeven automatisch weergegeven.

Als u de tabellen die u wilt koppelen nog moet toevoegen en het dialoogvenster Tabel weergeven niet wordt geopend, kunt u het dialoogvenster als volgt openen: ga naar het tabblad Ontwerpen en klik in de groep Weergeven/verbergen op de knop Tabel weergeven.

  1. Dubbelklik op de namen van de tabellen die u wilt relateren en sluit vervolgens het dialoogvenster Tabel weergeven. Als u een relatie wilt maken tussen een tabel en zichzelf, voegt u de tabel tweemaal toe.
  2. Sleep het veld dat u wilt relateren uit de tabel naar het gerelateerde veld in de andere tabel.

Als u meerdere velden wilt slepen, houdt u CTRL ingedrukt, klikt u op elk veld en sleept u de velden.

Meestal sleept u het primaire-sleutelveld (dat vet wordt weergegeven) vanuit de ene tabel naar een soortgelijk veld (vaak met dezelfde naam) in een andere tabel, dat de externe sleutel (refererende sleutel: een of meer tabelvelden (kolommen) die verwijzen naar het veld of de velden met de primaire sleutel in een andere tabel. Een refererende sleutel geeft de relatie tussen de tabellen aan.) wordt genoemd.

  1. Het dialoogvenster Relaties bewerken wordt weergegeven. Controleer of de veldnamen in beide kolommen kloppen. U kunt deze namen desgewenst wijzigen.

Stel zo nodig de relatieopties in.

  1. Klik op de knop Maken om de relatie te maken.
  2. Herhaal de stappen 4 tot en met 7 voor elk paar tabellen dat u wilt relateren.

Wanneer u het venster Relaties (venster Relaties: een objecttabblad waarin u relaties tussen tabellen en query's kunt bekijken, maken en wijzigen.) sluit, wordt u gevraagd of u de indeling wilt opslaan. Ook als u de indeling niet opslaat, worden de gemaakte relaties in de database opgeslagen.

WeergevenEen veel-op-veel-relatie definiëren

  1. Maak de twee tabellen waartussen u een veel-op-veel-relatie (veel-op-veel-relatie: een verbinding tussen twee tabellen waarbij één record in een van beide tabellen kan zijn gerelateerd aan veel records in de andere tabel. Als u een veel-op-veel-relatie wilt instellen, maakt u een derde tabel (verbindingstabel) en voegt u de primaire-sleutelvelden van beide tabellen aan deze tabel toe.) wilt definiëren.
  2. Maak een derde tabel, een zogenaamde verbindingstabel, en voeg hieraan nieuwe velden toe met dezelfde definities als de primaire-sleutelvelden uit de twee andere tabellen. In de verbindingstabel fungeren de primaire-sleutelvelden als refererende sleutels. Net als aan andere tabellen kunt u aan de verbindingstabel velden toevoegen.
  3. Stel in de verbindingstabel de primaire sleutel zo in dat deze alle primaire-sleutelvelden van de andere twee tabellen bevat. In de verbindingstabel Orderinformatie kan de primaire sleutel bijvoorbeeld worden samengesteld uit de velden Order-id en Productnummer.

WeergevenWerkwijze

  1. Open de tabel in de ontwerpweergave.
  2. Selecteer het veld of de velden die u als primaire sleutel wilt definiëren.

Als u één veld wilt selecteren, klikt u op de rijkiezer (rijkiezer: een klein vakje of balkje waarop u klikt om een gehele rij te selecteren in de ontwerpweergave van de tabel of de macro, of in de ontwerpweergave van rapporten terwijl u records sorteert en groepeert.) van het gewenste veld.

Als u meerdere velden wilt selecteren, houdt u CTRL ingedrukt terwijl u op de rijkiezer van elk veld klikt.

  1. Klik op het tabblad Ontwerpen, in de groep Extra, op Primaire sleutel.

 Opmerking   Als u de velden in een meervoudige primaire sleutel een andere volgorde wilt geven dan de volgorde van die velden in de tabel, klikt u op de knop Indexen in de groep Weergeven/verbergen om het venster Indexen (venster Indexen: een venster in een Access-database waarin u de indexen van een tabel kunt bekijken of bewerken, of waarin u indexen voor meerdere velden kunt maken.) weer te geven. Vervolgens kunt u in dit venster de veldnamen voor de index (index: een functie waarmee u sneller kunt zoeken en sorteren in een tabel op basis van sleutelwaarden en waarmee u uniekheid kunt afdwingen voor de rijen in een tabel. De primaire sleutel van een tabel wordt automatisch geïndexeerd. Sommige velden kunnen op grond van het gegevenstype niet worden geïndexeerd.) met de naam PrimaryKey opnieuw rangschikken.


  1. Definieer een een-op-veel-relatie (een-op-veel-relatie: een verbinding tussen twee tabellen waarbij de primaire-sleutelwaarde van elke record in de primaire tabel correspondeert met de waarde in een of meer overeenkomende velden van veel records in de gerelateerde tabel.) tussen elk van de twee primaire tabellen (primaire tabel: de 'een'-kant van twee gerelateerde tabellen in een een een-op-veel-relatie. Een primaire tabel moet een primaire sleutel hebben en elke record moet uniek zijn.) en de verbindingstabel.

  1. Sla de nieuwe database op.
 
 
Van toepassing op:
Access 2007