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

'Datensatz ist gelöscht' - ja, warum das denn?

146 views
Skip to first unread message

Peter Essig

unread,
Oct 25, 1999, 3:00:00 AM10/25/99
to
Hallo zusammen,

wer von den Profis hat sich schon mit diesem Probelm herumgeschlagen:

Dim Kunde as Recordset
Dim Kunde_alt as Recordset

dim
Set Kunde = currentdb.openrecordset("Select * from Kunde", dbopendynaset)
Set Kunde_alt = currentdb.openrecordset("Select * from Kunde_alt",
dbopendynaset)

do while not Kunde_alt.eof
Kunde.addnew
Kunde!NName = Kunde_Alt!NName
Kunde!Geburtstag = Kunde_Alt!geburtstag
If Kunde!Geburtstag = now then <- genau da knallts.

Wenn aus dem gerade geschriébenen Kunde-datensatz der Feldinhalt gelesen
wird, erscheint die Meldung 'Datensatz ist gelöscht'.
ABER NICHT IMMER! Teilweise nur im letzten Durchlauf, teilweise konnte er im
gleichen Datensatz alle Werte wieder auslesen, nur das letzte Feld nicht!
Außerdem kommt der Fehler sehr sporadisch.
Mach ich danach einn Update, steht der Wert richtig im Feld.
Bitte gebt mir nicht den Tip, den Wert in eine Variable o.ä. zu schreiben.
In unserem Quellcode ist diese Art von Programm an tausemnden von Stellen,
ich will das nicht alles ändern.
Lieblingsspruch: das ging doch alles schon mal.
Sonstiges: Access 97, SQL-Server 6.5 und 7.0, Win NT, alles neueste
Versionen, auch ODBC.
Ach ja: weitaus häufiger kommt der Fehler im ODBC-Direct Bereich.

Mit der Hoffnung auf Hilfe...

Peter Essig

Frank Hammerschmidt

unread,
Oct 25, 1999, 3:00:00 AM10/25/99
to
Hallo Peter,

Dein Konstrukt würde ich für so was nicht verwenden. Eine
SQL-Aktionsabfrage tut's besser.
An der Stelle, wo Du behauptest, der Datensatz sei geschrieben,
ist_er_noch_nicht_geschrieben, denn es fehlt ein Kunde.Update

BTW: If Kunde_Geburtstag = Now... Das würde ja bedeuten, dass Du
in Deiner Db bereits einen Kunden erfasst hast, der gerade eben
(now!) geboren wurde. Ich denke, für so einen Vergleich musst Du
aus Kunde_Geburtstag und aus now() nur Tag und Monat extrahieren.

Gruß

Frank


Peter Essig <peter...@compdata.de> schrieb in im Newsbeitrag:
94085694...@news.neckar-alb.de...

Christoph Muthmann

unread,
Oct 25, 1999, 3:00:00 AM10/25/99
to
Hallo Peter,
schau Dir dazu mal den BasicPro-Artikel
(http://www.eu.microsoft.com/germany/msdn/zeitschrift/) "Access und
eingebundene Tabellen" von Marco Gerlach an.

Vielleicht hilft ja der timestamp.

Schönen Tag noch,
Christoph
(Please post ALL replies to the newsgroup only unless indicated otherwise)

Peter Essig schrieb in Nachricht <94085694...@news.neckar-alb.de>...

Frank Hammerschmidt

unread,
Oct 25, 1999, 3:00:00 AM10/25/99
to
Hi Christoph und Peter,

Christoph Muthmann <c.mut...@gmx.de> schrieb in im Newsbeitrag:
#3HON3uH$GA....@cppssbbsa02.microsoft.com...

> (http://www.eu.microsoft.com/germany/msdn/zeitschrift/) "Access
und
> eingebundene Tabellen" von Marco Gerlach an.
>

leider ist der Link ungültig, und als er noch gültig war, stand
er nicht öffentlich zur Verfügung.

Weil ich die BP zu Hause hab, hier sinngemäß nur folgendes: beim
Update wird, trotz PK, nochmal über alle Spalten nach
Veränderungen geschaut. Dabei können bei nicht exakten Datentypen
Probleme (Rundung) auftreten, welche zu Meldungen wie "Datensatz
wurde zwischenzeitlich von einem anderen Benutzer geändert"
führen können. Das Problem kann mit einer Timestamp-Spalte
umgangen werden; wenn diese vorliegt, wird auch nur diese für die
Validierung herangezogen.

Dieser Artikel ist ausgezeichnet geeignet, Problemen beim Zugriff
auf ODBC-Datenquellen (vor allem natürlich SQL-Server) zu
entgehen und diesen Zugriff erstmal zu verstehen.

Wenn jemand Interesse hat, mach ich mal ein OCR drüber und mail
ihn dann.

Gruß

Frank

Christoph Muthmann

unread,
Oct 26, 1999, 3:00:00 AM10/26/99
to
Hallo Frank,
ich habe den Artikel runtergeladen und schicke ihn Dir per Mail.

Falls der Marco mitliest, kann er ja nochmal den Artikel in der Newsgroup
veröffentlichen.


Schönen Tag noch,
Christoph
(Please post ALL replies to the newsgroup only unless indicated otherwise)

Frank Hammerschmidt schrieb in Nachricht ...

Peter Essig

unread,
Oct 26, 1999, 3:00:00 AM10/26/99
to

Christoph Muthmann <c.mut...@gmx.de> schrieb in im Newsbeitrag:
eTuzrU3H$GA.242@cppssbbsa04...

> Hallo Frank,
> ich habe den Artikel runtergeladen und schicke ihn Dir per Mail.
>
> Falls der Marco mitliest, kann er ja nochmal den Artikel in der Newsgroup
> veröffentlichen.
>


He, hallo, ihr seid ja witzig...

eigentlich wollte ich ja wissen, wie es zu diesem Fehler kommt....

kann man mir vielleicht auch ein E-Mail mit dem Artikel schicken???

Peter

Peter Essig

unread,
Oct 26, 1999, 3:00:00 AM10/26/99
to

Frank Hammerschmidt <Frank.Ham...@lr-online.de> schrieb in im
Newsbeitrag: uJP2etuH$GA.275@cppssbbsa04...

> Hallo Peter,
>
> Dein Konstrukt würde ich für so was nicht verwenden. Eine
> SQL-Aktionsabfrage tut's besser.

weiß ich. Aber wie bereits erwähnt, ist das Programm alt und ich müßte 1000
Änderungen machen.
Mir gehts ja nur darum, wieso das nicht geht.

> An der Stelle, wo Du behauptest, der Datensatz sei geschrieben,
> ist_er_noch_nicht_geschrieben, denn es fehlt ein Kunde.Update

Nene, warum kann er dann in 99% noch gelesen werden? Er hat die Info noch im
Speicher!

>
> BTW: If Kunde_Geburtstag = Now... Das würde ja bedeuten, dass Du
> in Deiner Db bereits einen Kunden erfasst hast, der gerade eben
> (now!) geboren wurde. Ich denke, für so einen Vergleich musst Du
> aus Kunde_Geburtstag und aus now() nur Tag und Monat extrahieren.

au, das ist doch nur ein Beispiel. Ich werd das nächste mal was anderes
nehmen..... ;-)

>
> Gruß
>
> Frank
>
>


Frank Hammerschmidt

unread,
Oct 26, 1999, 3:00:00 AM10/26/99
to
passiert sofort


Frank


Peter Essig <peter...@compdata.de> schrieb in im Newsbeitrag:

9409243...@news.neckar-alb.de...

Volker Himmerkus

unread,
Oct 26, 1999, 3:00:00 AM10/26/99
to
Hallo
Dein Problem kann auch mit den Zeichensätzen der client-Anwendung zu tun haben.
Etwas ähnliches habe ich mal in Access erlebt, Datensätze mit Umlauten wurden
auch so angezeigt.

Gruß Volker

Peter Essig schrieb:

Feuersinger Andreas

unread,
Oct 27, 1999, 3:00:00 AM10/27/99
to
also ich hatte diese Meldung, als ich aus Access 97 eine SQL DB eingebunden
hatte.
Lösung war dann, die SQLSRV32.DLL in Version 3.60 zu tauschen.
version 3.70 ging nicht
Ciao

Feuer


Peter Essig <peter...@compdata.de> schrieb in im Newsbeitrag:

94085694...@news.neckar-alb.de...

0 new messages