vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Brandneu! sevEingabe v3.0 - Das Eingabecontrol der Superlative!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

Visual-Basic Einsteiger
Find-Methode 
Autor: Robert
Datum: 16.11.01 09:25

Hallo
Ich verwende ADO für den Datenbankzugriff. Dabei öffne ich ein Recordset welches nur die Spalten eines vorher geöffneten Recordsets enthält, die entweder Primärschlüssel sind oder 'Unique'. Und da ich in meinem Programm, welches irgendwann mal eine Werkzeugverwaltung werden soll auch neue Datensätze über einen separaten Dialog einfügen möchte, muss ich die einzelnen Felder des Recordsets mit den Schlüsseln durchsuchen, um doppelte Einträge und die daraus resultierende Fehlermeldung zu verhindern. Um bestimmte Einträge im Feld eines Recordsets zu suchen, kann ich die Funktion oder Methode Find anwenden. Das funktioniert auch so weit. Meine Frage ist aber nun ob bei der Anwendung der Funktion Find der Datentyp des zu durchsuchenden Feldes eine Rolle spielt? Denn in meinem Programm bekomme ich in manchen Fällen diese Fehlermeldung:

Die Argumente sind vom falschen Typ, liegen außerhalb des Gültigkeitsbereichs oder sind miteinander unvereinbar.

Mein Quellcode (Auszug/ Stelle an der der Fehler gelegentlich auftritt) :

For z = 0 To SpCount
strLbl = strEditColumn(z)
strText = txt(z).Text
For iRec = 0 To recC
iFieldTyp = rec.Fields(iRec).Type
iFieldTyp = FieldType(iFieldTyp)
RecStrC = rec.Fields.Item(iRec).Name
If strLbl = RecStrC Then
If iFieldTyp = 0 Then
strFindStr = strLbl & " = #" & strText & "#"
ElseIf iFieldTyp = 1 Then
strFindStr = strLbl & " = '" & strText & "'"
End If
rec.Find strFindStr, , adSearchForward, 1
If Not rec.EOF Then
MsgBox "Datensatz kann nicht in die Tabelle eingefügt werden!" & vbNewLine & vbNewLine & _
"'" & strText & "'" & vbTab & vbTab & "ist nicht zulässig." & vbNewLine & _
"'" & strLbl & "'" & vbTab & vbTab & "darf keine mehrfach vorkommenden Werte enthalten.", vbCritical
txt(z).SetFocus
Exit Sub
End If
End If
Next
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Find-Methode57Robert16.11.01 09:25
Re: Find-Methode303ModeratorDieter16.11.01 10:52

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel