Jusky Geschrieben 20. Februar 2003 Geschrieben 20. Februar 2003 Hallo, ich möchte einen Datensatz in Access unter VB ändern. Folgenden Code habe ich dazu bereits programmiert: Dim strSQL As String Dim rsLoadInfos As ADODB.Recordset Set rsLoadInfos = New ADODB.Recordset strSQL = "SELECT Wert FROM Tabelle WHERE eintrag = '" & Name & "'" Debug.Print strSQL rsLoadInfos.Open strSQL, AdminDB, adOpenStatic, adLockBatchOptimistic, -1 'Wert bei Name soll auf 1 gesetzt werden ??????? rsLoadInfos.Close Set rsLoadInfos = Nothing Name ist ein Parameter und wird beim Aufruf übergeben. Wie kann ich nun den Inhalt in der Spalte "Wert" abändern? Der Datentyp des Inhalts ist long und soll in der Zeile, wo eintrag = Name ist, von 0 auf 1 gesetzt werden. Danke für die Hilfe!!! MfG, Jusky
Jusky Geschrieben 20. Februar 2003 Autor Geschrieben 20. Februar 2003 Kann mir denn keiner helfen??? Die Sache ist leider sehr dringend!!! Eine verzweifelte Jusky.
Klotzkopp Geschrieben 20. Februar 2003 Geschrieben 20. Februar 2003 VB ist lange her... rsLoadInfos.Fields.Item(0) = 1 rsLoadInfos.Update ...alles ohne Gewähr, könnte auch Item(1) sein.
Jusky Geschrieben 20. Februar 2003 Autor Geschrieben 20. Februar 2003 Hallo Klotzkopp, erst einmal danke für die schnelle Hilfe! Ich habe es gleich mal ausprobiert, aber er bringt mir ne Fehlermeldung: das Objekt kann nicht gefunden werden... Weitere Tips?
Klotzkopp Geschrieben 20. Februar 2003 Geschrieben 20. Februar 2003 Was sagt denn der Debugger an der Stelle? Hat der Recordset eine Fields-Collection mit Items?
Der Kleine Geschrieben 20. Februar 2003 Geschrieben 20. Februar 2003 Probiers mal mit : rsLoadInfos.Edit rsLoadInfos("Wert") = 1 rsLoadInfos.update
Jusky Geschrieben 20. Februar 2003 Autor Geschrieben 20. Februar 2003 @Klotzkopp Wie kriege ich das denn raus? (Er zeigt mir nur ne Fehlermeldung, die ich aber nicht debuggen kann.) @Der Kleine Da meckert er bei mir auch rum: Methode oder Mitgliedsdaten nicht gefunden. Der kennt Edit nicht.... Zeigt bei mir nur EditMode an, wenn ich die Methodenauflistung bekomme. - Das geht aber auch nicht, da es anscheinend eine ungültige Methode ist...
Klotzkopp Geschrieben 20. Februar 2003 Geschrieben 20. Februar 2003 Originally posted by Jusky @Klotzkopp Wie kriege ich das denn raus? (Er zeigt mir nur ne Fehlermeldung, die ich aber nicht debuggen kann.)Setze einen Breakpoint auf die Zeile nach dem Open, und starte das Programm im Debugger. Wenn das Programm an dieser Stelle hält, kannst du dir ansehen, was im Recordset drinsteht.
Jusky Geschrieben 20. Februar 2003 Autor Geschrieben 20. Februar 2003 Da kommt irgendwie nix gescheites: rsLoadInfos.Fields...=<Ein Objekt, das dem angeforderten Namen oder dem Ordinalverweis entspricht, kann nicht gefunden werden. Und nun? :confused:
Klotzkopp Geschrieben 20. Februar 2003 Geschrieben 20. Februar 2003 Gibt es denn einen Datensatz, auf den der Name passt? Was ist, wenn du = durch LIKE ersetzt?
Jusky Geschrieben 20. Februar 2003 Autor Geschrieben 20. Februar 2003 Habe das Ganze nochmal mit rsLoadInfos.Fields.Item(0) = 1 probiert. - Der Compiler bringt mir jetzt keine Fehlermeldung mehr. Aber wenn ich unter Access in die DB gehe und mir die Daten anschaue, dann ist der alte Wert immer noch da. Es wurde nichts geändert! Habe ich vielleicht irgendwas vergessen? - Sind vielleicht die Parameter beim SQL-Abruf vielleicht falsch? rsLoadInfos.Open strSQL, AdminDB, adOpenStatic, adLockBatchOptimistic, -1 Oder muss ich vielleicht irgendwas noch mit AdminDB anstellen?
Klotzkopp Geschrieben 20. Februar 2003 Geschrieben 20. Februar 2003 Was steht denn drin? Das Passwort kannst du ja aus-xxxen.
Jusky Geschrieben 20. Februar 2003 Autor Geschrieben 20. Februar 2003 Da steht der Provider drin (MS Jet...), die UserID, Passwort, der Pfad (in welchem Verzeichnis die DB liegt), MODE: Share Deny None... Ist das denn für die Datenspeicherung relevant?
Jusky Geschrieben 20. Februar 2003 Autor Geschrieben 20. Februar 2003 Hey, Moment mal... Ich habe es soeben geschafft!!!!!! Mit folgendem Aufruf klappt es: rsLoadInfos.Open strSQL, AdminDB, adOpenStatic, adLockBatchOptimistic, -1 rsLoadInfos.Fields.Item(0) = 1 rsLoadInfos.Fields.Refresh rsLoadInfos.UpdateBatch rsLoadInfos.Close Dank dir für die Denkanstöße!!! MfG, Jusky
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden