Recordset

  • VB6

Es gibt 6 Antworten in diesem Thema. Der letzte Beitrag () ist von DK1.

    Hallo!
    Mit der SQL Abfrage an eine Access Datenbank sollen alle Einträge, die in der Spalte "Sernr" stehen in ein Recordset gelesen werden. Das sollte ja so funktionieren:


    Quellcode

    1. Function field_ergtbl_exists(con As Connection, sernr As String) As Boolean
    2. Dim rs As Recordset
    3. field_ergtbl_exists = False
    4. Set rs = New Recordset
    5. With rs
    6. Set .ActiveConnection = con
    7. .CursorLocation = adUseClient
    8. .CursorType = adOpenKeyset
    9. .LockType = adLockOptimistic
    10. .Source = "SELECT Sernr FROM Ergebnis_tbl;"
    11. .Open Options:=adCmdText
    12. End With


    Nun möchte ich prüfen, ob eine betimmte Seriennummer bereits existiert. Dazu verwende ich folgenden Code

    Quellcode

    1. For i = 0 To rs.RecordCount - 1
    2. If rs.Fields(i).Value = sernr Then
    3. field_ergtbl_exists = True
    4. Exit Function
    5. End If
    6. Next i


    Aber irgendwie funktioniert das nicht so richtig...kleines Beispiel:
    Für einen einzigen Eintrag in der Spalte "Sernr" funktioniert das . Wenn zwei Einträge in dieser Spalte stehen (1 und 2), ist erstens der Wert für rs.RecordCount 1 (ich hätte 2 erwartet) und demzufolge kann auch nicht erkannt werden, ob diese 2 bereits vorhanden ist.

    Kann mir jemand helfen?
    Benutze doch zur Prüfung eine SQL Abfrage:

    "SELECT count(0) ANZAHL from Ergebnis_tbl where upper(Sernr) = " & ucase(Sernr) & ";"

    Dann das Feld "ANZAHL" abfragen.
    Besucht auch mein anderes Forum:
    Das Amateurfilm-Forum

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „Marcus Gräfe“ ()

    Warum kann ich in einem Public Sub () keine

    "Dim MyTable as Recordset" deklarieren??

    Vorher ging es immer...aber auf einmal findet er as "Recordset" nicht...aber trotzdem kann ich hinterher MyTable setzen:

    Set MyTable = Data1.Recordset

    Irgendwelche ideen?
    Hi,

    prüf mal deine Verweise !!!!


    bye ...

    LaMa5.
    Die Wissenschaft wird nie ein besseres Kommunikationssystem in den Büros erfinden können als die Kaffeepause.
    (Autor: Earl Wilson, amerik. Schriftsteller)

    https://www.serviceteam-md.de