Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Ursprüngliche KB-Nummer: 328828
Hinweis
Erfordert grundlegende Makro-, Codierungs- und Interoperabilitätskenntnisse. Dieser Artikel bezieht sich auf eine Microsoft Access-Datenbank (.mdb und ACCDB) und auf ein Microsoft Access-Projekt (ADP).
In diesem Artikel werden Fehler beschrieben, die in Microsoft Access auftreten können, wenn Sie Daten in Abfragen und in Formularen aktualisieren. In diesem Artikel werden auch die Ursachen der Fehler und die Problembehandlung beschrieben.
Wenn Sie versuchen, Daten in einer Abfrage oder in einem Formular zu aktualisieren, erhalten Sie möglicherweise eine der folgenden Fehlermeldungen:
Der Vorgang muss eine aktualisierbare Abfrage verwenden.
-oder-
Dieses Recordset kann nicht aktualisiert werden.
Information zur Fehlersuche bei Problemen, die beim Aktualisieren von Daten in einer Abfrage auftreten können
Wenn die Abfrage auf drei oder mehr Tabellen basiert und eine Viele-zu-eins-zu-viele-Beziehung vorliegt, können Sie die Daten nicht direkt in der Abfrage aktualisieren. Sie können die Daten in einem Formular oder auf einer Datenzugriffsseite aktualisieren. Sie können dies basierend auf der Abfrage ausführen, wenn die
RecordsetTypeEigenschaft des Formulars auf Dynaset(Inkonsistente Updates) festgelegt ist.Wenn es sich bei der Abfrage um eine Kreuztabellenabfrage handelt, können Sie die Daten in der Abfrage nicht aktualisieren.
Wenn es sich bei der Abfrage um eine Microsoft SQL-Pass-Through-Abfrage handelt, können Sie die Daten in der Abfrage nicht aktualisieren.
Wenn die Abfrage eine Summe, einen Mittelwert, eine Anzahl oder einen anderen Summentyp für die Werte in einem Feld berechnet, können Sie die Daten in der Abfrage nicht aktualisieren. Außerdem können Sie keine Abfrage aktualisieren, die auf ein Feld in der Zeile Aktualisieren auf aus einer Kreuztabelle, einer Abfrage, einer Auswahlabfrage oder einer Unterabfrage verweist, die Summen oder Aggregatfunktionen enthält. Verwenden Sie die Funktion "Domänenaggregat" in der Zeile " Aktualisieren auf " einer Aktualisierungsabfrage, um dieses Problem zu umgehen. Sie können felder aus einer Kreuztabellenabfrage, einer Auswahlabfrage oder einer Unterabfrage verweisen, die Summen oder Aggregatfunktionen enthalten.
Wenn es sich bei der Abfrage um eine Union-Abfrage handelt, können Sie keine Daten in der Abfrage aktualisieren.
Wenn die Eigenschaft "Eindeutige Werte" der Abfrage auf "Ja" festgelegt ist, können Sie die Daten in der Abfrage nicht aktualisieren. Um dieses Problem zu umgehen, legen Sie die Eigenschaft "Eindeutige Werte" der Abfrage auf "Nein" fest.
Wenn die Abfrage eine verknüpfte ODBC-Tabelle ohne eindeutigen Index oder eine Paradox-Tabelle ohne Primärschlüssel enthält, können Sie die Daten in der Abfrage nicht aktualisieren. Um dieses Problem zu umgehen, fügen Sie der verknüpften Tabelle einen Primärschlüssel oder einen eindeutigen Index hinzu.
Wenn Sie keine Aktualisierungsdatenberechtigungen für die Abfrage oder die zugrunde liegende Tabelle besitzen, können Sie keine Daten aktualisieren. Um dieses Problem zu beheben, weisen Sie berechtigungen zum Aktualisieren der Daten zu.
Wenn die Abfrage mehrere Tabellen oder eine Abfrage enthält und die Tabellen oder Abfragen nicht durch eine Verknüpfungslinie in der Entwurfsansicht verknüpft sind, können Sie die Daten in der Abfrage nicht aktualisieren. Um dieses Problem zu beheben, müssen Sie die Tabellen ordnungsgemäß verknüpfen, damit Sie sie aktualisieren können.
Wenn das Feld, das Sie aktualisieren möchten, ein berechnetes Feld ist, können Sie die Daten in der Abfrage nicht aktualisieren.
Wenn das Feld, das Sie zu aktualisieren versuchen, schreibgeschützt ist, die Datenbank schreibgeschützt geöffnet ist oder sich auf einem schreibgeschützten Laufwerk befindet, können Sie keine Daten in der Abfrage aktualisieren. Um dieses Problem zu vermeiden, öffnen Sie die Datenbank nicht im schreibgeschützten Modus. Wenn sich die Datenbank auf einem Schreibschutzlaufwerk befindet, entfernen Sie das schreibgeschützte Attribut vom Laufwerk, oder verschieben Sie die Datenbank auf ein Laufwerk, das nicht schreibgeschützt ist.
Wenn das Feld im Datensatz, den Sie aktualisieren möchten, gelöscht oder von einem anderen Benutzer gesperrt ist, können Sie die Daten in der Abfrage nicht aktualisieren. Ein gesperrter Datensatz kann aktualisiert werden, sobald der Datensatz entsperrt ist.
Wenn die Abfrage auf Tabellen mit einer 1:n-Beziehung basiert, sind folgende Feldtypen möglicherweise nicht änderbar:
- Verknüpfungsfeld von der "1"-Seite.
- Das Feld für die Viele-Seite-Verknüpfung wird nicht im Datenblatt angezeigt.
- Verknüpfen Sie das Feld von der "viele"-Seite, nachdem Sie Daten auf der "eine"-Seite aktualisiert haben.
- Ein leeres Feld aus der Tabelle auf der 1-Seite einer 1:n-Beziehung mit einer äußeren Verknüpfung ist vorhanden.
- Der gesamte eindeutige Schlüssel der ODBC-Tabelle wird nicht als Ausgabe angezeigt.
Sie können eines dieser Probleme beheben, wenn Sie die richtige Aktion aus der folgenden Liste ausführen:
- Aktivieren Sie kaskadierende Aktualisierungen zwischen den beiden Tabellen.
- Fügen Sie das Verknüpfungsfeld von der "Viele"-Seite Ihrer Abfrage hinzu, damit Sie neue Datensätze erstellen können.
- Speichern Sie den Eintrag. Sie können Änderungen am n-Seite-Verknüpfungsfeld vornehmen.
- Geben Sie Werte in Feldern in der Tabelle auf der viele-Seite ein. Dies ist nur möglich, wenn das verknüpfte Feld von der 1-Seite einen Wert für diesen Datensatz enthält.
- Wählen Sie alle Primärschlüsselfelder der ODBC-Tabellen aus, damit sie eingefügt werden können.
Informationen zur Fehlerbehebung bei Problemen, die beim Aktualisieren von Daten in einem Formular auftreten können
Sie können Daten in einem Formular nicht aktualisieren, wenn das Formular auf einer gespeicherten Prozedur mit mehr als einer Tabelle basiert.
Sie können Daten in einem Formular nicht aktualisieren, wenn das Formular auf einem ADO-Recordset (ActiveX Data Objects) basiert. Mithilfe von Access-Formularen können Sie Daten aus einem ADO-Recordset bearbeiten, wenn das ADO-Recordset mithilfe einer Kombination von MSDataShape und sql Server OLEDB-Anbietern erstellt wird.