Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Datenbank oder Objekt ist schreibgeschützt

863 views
Skip to first unread message

Wolfgang Weitzel

unread,
Jun 14, 2002, 9:31:03 AM6/14/02
to
Hallo,

ich habe eine Abfrage in einem Recortsetobjekt geöffnet.
Nun möchte ich einige Daten in die Abfrage automatische speichern. Beim
ersten Feld erhalte ich die Fehlermeldung
"Aktualisieren nicht möglich, Datenbank oder Objekt ist schreibgeschützt!"
Wenn ich die Abfrage normal öffne kann ich Daten eingeben und ändern ohne
Probleme.

Wie kann ich die Abfrage ohne Schreibschutz öffnen?

Zur Zeit verwende ich folgenden Code:
Set db = CurrentDb
Set rs = db.OpenRecordset("Name", dbOpenDynaset)
rs!feld1="Eintrag"

Ich hoffe, es kennt jemand dioe Lösung.

Gruß Wolfgang

Gunter Avenius

unread,
Jun 14, 2002, 9:52:57 AM6/14/02
to
Hallo Wolfgang,

Wolfgang Weitzel schrieb folgendes:

Dir fehlt ein .AddNew / .Edit

' Neuer Datensatz
With rs
.AddNew
!Feld1="Eintrag"
.Update
end with

bzw.
'Editieren eines Datensatzes
With rs
'...
.Edit
!Feld1="Eintrag"
.Update
end with

--
Gruß
Gunter
_________________________________________________
Access FAQ: http://www.donkarl.com
home: http://www.avenius.com


Wolfgang Weitzel

unread,
Jun 14, 2002, 12:30:16 PM6/14/02
to
Hallo Gunter,

ich habe nun die With End with Schleife mit .edit und .Update eingefügt. Bei
Ausführung des Programms erhalte ich wieder die Fehlermeldung 3027 mit dem
Text
"Aktualisieren nicht möglich, Datenbank oder Objekt ist.
Muß ich an dieser Stelle noch etwas beachten?

Gruß Wolfgang

> > schreibgeschützt!"
"Gunter Avenius" <ave...@avenius.com> schrieb im Newsbeitrag
news:aecsg7$n17$07$1...@news.t-online.com...

Gunter Avenius

unread,
Jun 14, 2002, 12:41:16 PM6/14/02
to
Hallo Wolfgang,

Wolfgang Weitzel schrieb folgendes:


> ich habe nun die With End with Schleife mit .edit und .Update
> eingefügt. Bei Ausführung des Programms erhalte ich wieder die
> Fehlermeldung 3027 mit dem Text
> "Aktualisieren nicht möglich, Datenbank oder Objekt ist.

Werf mal eine Blick in die Onlinehilfe zur Edit Methode.

Hier mal ein Beispiel:
Dim dbs As DAO.Database
Dim rec As DAO.Recordset
Set dbs = CurrentDb
Set rec = dbs.OpenRecordset("DeineAbfrage", dbOpenDynaset)

With rec
.Edit
!Feld1 = "Bla"
.Update
End With

rec.Close
Set rec = Nothing
dbs.Close
Set dbs = Nothing

Gunter Avenius

unread,
Jun 14, 2002, 12:44:00 PM6/14/02
to
Hallo Wolfgang,

Wolfgang Weitzel schrieb folgendes:


> Hallo Gunter,
>
> ich habe nun die With End with Schleife mit .edit und .Update
> eingefügt. Bei Ausführung des Programms erhalte ich wieder die
> Fehlermeldung 3027 mit dem Text
> "Aktualisieren nicht möglich, Datenbank oder Objekt ist.
> Muß ich an dieser Stelle noch etwas beachten?

Noch ein Nachtrag, heißt Deine Abfrage wirklich "Name" ?. Wenn Ja ist das
sehr ungünstig. Bennene diese um in qry_Name.
Siehe auch FAQ Punkt 1.5 (Benamsungen)

Wolfgang Weitzel

unread,
Jun 14, 2002, 1:41:27 PM6/14/02
to
Hallo Gunter,

nachfolgend der vollständige Code, der mir den Fehler liefert.

Dim db As DAO.Database, rsdb As DAO.Recordset
Set db = CurrentDb
Set rsdb = db.OpenRecordset("Qualifikation", dbOpenDynaset)
With rsdb
.Edit
rsdb!OptBwl = 0
........
........
.Update
End With
rsdb.Close
Set rsdb = Nothing
db.Close
Set db = Nothing

Ich bin ratlos und kann den Grund nicht erkennen. Beim debuggen wird die
Zeile mit dem Edit Befehl markiert.

Gruß Wolfgang

"Gunter Avenius" <ave...@avenius.com> schrieb im Newsbeitrag

news:aed6be$5s0$06$1...@news.t-online.com...

Gunter Avenius

unread,
Jun 14, 2002, 1:48:39 PM6/14/02
to
Hallo Wolfgang,

Wolfgang Weitzel schrieb folgendes:


> nachfolgend der vollständige Code, der mir den Fehler liefert.
>
> Dim db As DAO.Database, rsdb As DAO.Recordset
> Set db = CurrentDb
> Set rsdb = db.OpenRecordset("Qualifikation", dbOpenDynaset)
> With rsdb
> .Edit
> rsdb!OptBwl = 0
> ........
> ........
> .Update
> End With
> rsdb.Close
> Set rsdb = Nothing
> db.Close
> Set db = Nothing
>
> Ich bin ratlos und kann den Grund nicht erkennen. Beim debuggen wird
> die Zeile mit dem Edit Befehl markiert.

Wird der Datensatz zum Zeitpunkt wo Du den Code ausführst bearbeitet z.B. in
einem Formular?

Wolfgang Weitzel

unread,
Jun 14, 2002, 1:59:45 PM6/14/02
to

"Gunter Avenius" <ave...@avenius.com> schrieb im Newsbeitrag
news:aeda9p$1tn$05$1...@news.t-online.com...

Die Tabelle, in der die Daten eingetragen werden sollen, ist Bestandteil
einer anderen Abfrage, welche hinter einem geöffneten Formular liegt.

Gruß Wolfgang

Gunter Avenius

unread,
Jun 14, 2002, 2:07:03 PM6/14/02
to
Hallo Wolfgang,
Kopiere folgende Funktion in ein neues Standardmodul, Schließe alle
Formulare, Tabellen, Abfrageb. Rufe diese im Direktfenster (STRG + G) mit ?
fncTest auf.
Wird wieder ein Fehler ausgegeben?

Public Function fncTest()
Dim db As DAO.Database
Dim rsdb As DAO.Recordset


Set db = CurrentDb
Set rsdb = db.OpenRecordset("Qualifikation", dbOpenDynaset)
With rsdb
.Edit
rsdb!OptBwl = 0

.Update
End With
rsdb.Close
Set rsdb = Nothing
db.Close
Set db = Nothing

End function

Gunter Avenius

unread,
Jun 14, 2002, 2:15:20 PM6/14/02
to
Hallo Wolfgang,

Wolfgang Weitzel schrieb folgendes:


> Die Tabelle, in der die Daten eingetragen werden sollen, ist
> Bestandteil einer anderen Abfrage, welche hinter einem geöffneten
> Formular liegt.

Dieses Formular, hast Du da bei der Formulareigenschaft "Datensätze sperren"
alle Datensätze angegeben, bzw. hast Du bei der Verknüpfungseigenschaften in
der Abfrage bei "Datensätze sperren" alle Datensätze angegeben?

Wolfgang Weitzel

unread,
Jun 14, 2002, 2:27:30 PM6/14/02
to

"Gunter Avenius" <ave...@avenius.com> schrieb im Newsbeitrag
news:aedbca$d1c$04$1...@news.t-online.com...
Hallo Gunter,

der Fehler wird auch ausgegeben, nachdem nur die Funktion in einem neuen
Modul Test ausgeführt wird.

Gruß Wolfgang

Gunter Avenius

unread,
Jun 14, 2002, 2:31:17 PM6/14/02
to
Hallo Wolfgang,

Wolfgang Weitzel schrieb folgendes:


> Die Tabelle, in der die Daten eingetragen werden sollen, ist
> Bestandteil einer anderen Abfrage, welche hinter einem geöffneten
> Formular liegt.

Dieses Formular, hast Du da bei der Formulareigenschaft "Datensätze sperren"


alle Datensätze angegeben, bzw. hast Du bei der Verknüpfungseigenschaften in
der Abfrage bei "Datensätze sperren" alle Datensätze angegeben?

> der Fehler wird auch ausgegeben, nachdem nur die Funktion in einem


> neuen Modul Test ausgeführt wird.

wenn es das mit der Datensatzsperrung nicht ist, bist Du sicher das Du das
Feld in der Abfrage von Hand ändern kannst?

--
Gruß
Gunter

Wolfgang Weitzel

unread,
Jun 14, 2002, 2:47:26 PM6/14/02
to

"Gunter Avenius" <ave...@avenius.com> schrieb im Newsbeitrag
news:aedcqq$89b$07$1...@news.t-online.com...

Ich habe eine Bearbeitung in der Abfrage nochmals durchgeführt. Dies geht
ohne weitere Probleme. Ich habe ein Feld geändert und die Abfrage
geschlossen. Nachdem ich die Abfrage wieder geöffnet habe, habe ich den
geänderten Feldinhalt feststellen können.

Gruß Wolfgang

0 new messages