Neuigkeiten:

Ist euer Problem gelöst, dann bitte den Knopf "Thema gelöst" drücken!

Mobiles Hauptmenü

Eintrag aus Listbox aktualisieren

Begonnen von AccessRuntime, November 09, 2012, 09:16:19

⏪ vorheriges - nächstes ⏩

AccessRuntime

Hallo,

ich stehe vor einem Problem. Ich habe mir ein Formular gebaut, dort eine Listbox erstellt und diese mittels Abfrage aus einer verknüpften SQL Datenbank befüllt. Funktioniert alles super. Aber jetzt will ich Datensätze ändern.. Dazu habe ich eine Schaltfläche erzeugt und folgenden Code hinterlegt:
Private Sub btnCardDelete_Click()
    If IsEmpty(Me.lstCard.Column(0)) Then
        MsgBox "Keine Karte gewählt!"
    Else
        SqlString = "Update karten_karten Set FK_Pers_Nr = NULL WHERE CardSN like " & Me.lstcard.Column(0)
        Debug.Print SqlString
        DBEngine(0)(0).Execute SqlString, dbFailOnError
    End If
    Me.lstCard.Requery
End Sub


Der scheint auch soweit Fehlerfrei zu sein. Aber immer wenn ich die Update Anweisung laufen lassen will, sagt mir Access ein anderer Nutzer greift darauf zu. Das kann nicht sein. Ich bin der einzige. Meine Vermutung ist das die Bindung in die Listbox ein Lock auf den Datensatz setzt. Und jetzt stellt sich mir die Frage wie kann ich den Datensatz nun aktualisieren?

mfg

database

Hallo,

vorab ein paar Fragen ...:

.... Set FK_Pers_Nr = NULL  ....

Stellt FK_Pers_Nr etwa einen Fremdschlüssel in dieser Tabelle dar?

Wie lautet denn die Datenherkunft deines Listenfeldes? Zeig mal bitte den zugehörigen SQLString

Wie wird die Datenherkunft gebildet? SQL-String im Eigenschaftsfenster, VBA zuweisung oder eine Abfrage?

Verwendest du kein 'Option Explicit'?

AccessRuntime

#2
ZitatStellt FK_Pers_Nr etwa einen Fremdschlüssel in dieser Tabelle dar?
Ja, genau das.

ZitatWie lautet denn die Datenherkunft deines Listenfeldes? Zeig mal bitte den zugehörigen SQLString
SELECT karten_karten.CardSN, karten_karten.CardReadableKey, karten_karten.CardDefect, karten_karten.CardComment FROM karten_karten WHERE (((karten_karten.FK_Pers_Nr) Like [Formulare]![frmMain]![lstName]));

ZitatWie wird die Datenherkunft gebildet? SQL-String im Eigenschaftsfenster, VBA zuweisung oder eine Abfrage?
Die Abfrage steht im Eigenschaftenfeld Datensatzherkunft.

ZitatVerwendest du kein 'Option Explicit'?
Erwischt. Das ist mein erstes Projekt in Access seit Ewigkeiten, wusste gar nicht mehr das es die Option gibt ^^