Felsöka fel som kan uppstå när du uppdaterar data i Access-frågor och -formulär
Anteckning
Office 365 ProPlus byter namn till Microsoft 365-appar för företag. Mer information om den här ändringen finns i det här blogginlägget.
Ursprungligt KB-nummer: 328828
Anteckning
Kräver grundläggande makron, kodning och kompatibilitetsfärdigheter. Den här artikeln gäller en Microsoft Access-databas (.mdb och .accdb) och ett Microsoft Access-projekt (.adp).
I den här artikeln beskrivs fel som kan uppstå i Microsoft Access när du uppdaterar data i frågor och formulär. I den här artikeln beskrivs också orsakerna till felen och hur du felsöker dem.
När du försöker uppdatera data i en fråga eller ett formulär kan du få något av följande felmeddelanden:
Åtgärden måste använda en fråga som kan uppdateras.
eller
Det går inte att uppdatera den här postuppsättningen.
Felsöka information om problem som kan uppstå när du uppdaterar data i en fråga
När frågan baseras på tre eller fler tabeller och det finns en många-till-en-till-många-relation kan du inte uppdatera data direkt i frågan. Du kan uppdatera data i ett formulär eller på en dataåtkomstsida. Det kan du göra baserat på frågan när formulärets egenskap anges
RecordsetTypetill Urval (inkonsekventa uppdateringar).När frågan är en korsfråga kan du inte uppdatera data i frågan.
När frågan är en Microsoft SQL för direktfråga kan du inte uppdatera data i frågan.
När frågan beräknar en summa, ett medelvärde, ett antal eller någon annan typ av summa för värdena i ett fält kan du inte uppdatera data i frågan. Du kan inte heller uppdatera en fråga som refererar till ett fält i raden Uppdatera till från en korsfråga, en fråga, en urvalsfråga eller en underfråga som innehåller summor eller mängdfunktioner. Du kan komma runt det här problemet genom att använda funktionen Domän mängd i raden Uppdatera till i en uppdateringsfråga. Du kan referera till fält från en korsfråga, en urvalsfråga eller en underfråga som innehåller summor eller mängdfunktioner.
När frågan är en unionsfråga kan du inte uppdatera data i frågan.
När egenskapen Unika värden för frågan har värdet Ja går det inte att uppdatera data i frågan. Du kan komma runt det här problemet genom att ange egenskapen Unika värden för frågan till Nej.
När frågan innehåller en länkad ODBC-tabell utan unikt index eller en Paradox-tabell utan primärnyckel, kan du inte uppdatera data i frågan. Du kan komma runt det här problemet genom att lägga till en primärnyckel eller ett unikt index i den länkade tabellen.
När du inte har behörigheten Uppdatera data för frågan eller den underliggande tabellen kan du inte uppdatera data. Lös problemet genom att tilldela behörigheter för att uppdatera data.
När frågan innehåller fler än en tabell eller en fråga, och tabellerna eller frågorna inte är samman sammanfogade med en kopplingslinje i designvyn, kan du inte uppdatera data i frågan. Du måste koppla tabellerna korrekt så att du kan uppdatera dem för att lösa problemet.
När fältet som du vill uppdatera är ett beräknat fält kan du inte uppdatera data i frågan.
När fältet som du försöker uppdatera är skrivskyddade, databasen öppnas som skrivskyddade eller om databasen finns på en skrivskyddd enhet kan du inte uppdatera data i frågan. Du undviker det här problemet genom att inte öppna databasen som skrivskyddat. Om databasen finns på en enhet som är skrivskyddade tar du bort attributet skrivskydd från enheten eller flyttar databasen till en enhet som inte är skrivskyddade.
När fältet i posten som du försöker uppdatera tas bort eller är låst av en annan användare kan du inte uppdatera data i frågan. En låst post kan uppdateras så snart posten har låsts upp.
När frågan baseras på tabeller med en 1:många-relation blir de typer av fält som du kanske inte kan ändra följande:
- Kopplingsfält från 1-sidan.
- Kopplingsfältet "många" visas inte i databladet.
- Kopplingsfält från "många"-sidan efter att du har uppdaterat data på 1-sidan.
- Ett tomt fält från tabellen på 1-sidan av en en-till-många-relation med en yttre koppling finns.
- Hela den unika nyckeln i ODBC-tabellen är inte resultatet.
Du kan lösa något av dessa problem om du gör på rätt sätt i följande lista:
- Aktivera sammanhängande uppdateringar mellan de två tabellerna.
- Lägg till kopplingsfältet från "många"-sidan i frågan så att du kan lägga till nya poster.
- Spara posten. Du kan göra ändringar i kopplingsfältet "många"-sidan.
- Ange värden i fält från tabellen på "många"-sidan. Du kan bara göra detta när det sammanfogade fältet från 1-sidan innehåller ett värde för den posten.
- Markera alla primärnyckelfält i ODBC-tabellerna så att de kan infogas i dem.
Felsöka information om problem som kan uppstå när du uppdaterar data i ett formulär
Du kan inte uppdatera data i ett formulär om formuläret baseras på en lagrad procedur med fler än en tabell.
Du kan inte uppdatera data i ett formulär om formuläret baseras på en ADO ActiveX postuppsättning (Data Objects). Med Access-formulär kan du redigera data från en ADO-postuppsättning om ADO-postuppsättningen skapas med en kombination av MSDataShape- och OLEDB-SQL Server.