Die Community zu .NET und Classic VB.
Menü

FAQ 0053: Wie vermeide ich einen Fehler bei leeren Datenbankfeldern?

 von 

Frage 

Wie vermeide ich einen Fehler bei leeren Datenbankfeldern?

Beispiel  

Wenn eine Tabelle in einer Datenbank leere Felder zuläßt, so wird in der Datenbank der Wert Null (nicht die Zahl!) gespeichert, wenn kein anderer Wert genannt wurde.

Visual Basic kann diesen Wert Null aber nicht anzeigen, es wird der Fehler "Ungültige Verwendung von Null" ausgelöst.
Verhindern kann man diesen Fehler mit folgender Funktion:

Function ValueOf(ByRef objField As Field) As String
    If (objField Is Nothing) Then
        ValueOf = vbNullString
    Else
        If (IsNull(objField)) Then
            ValueOf = vbNullString
        Else
            ValueOf = objField.Value
        End If
    End If
End Function

Listing 1: Funktion zum Abfragen leerer Datenbankfelder

Dim strWert As String

strWert = ValueOf(objRS.Fields("ID"))

Listing 2: Möglicher Aufruf der Funktion

Die Funktion ist so gehalten, daß sie sowohl mit ADO als auch mit DAO arbeitet.

Zu beachten ist, daß diese Funktion immer einen String zurückgibt. Werden andere Datentypen benötigt, kann man entweder die Funktion entsprechend anpassen oder die Rückgabe obiger Funktion in den benötigten Datentyp konvertieren.

Ihre Meinung  

Falls Sie Fragen zu dieser FAQ haben, Ihre Erfahrung mit anderen Nutzern austauschen möchten oder auf eine Ergänzung hinweisen möchten, dann teilen Sie uns diese bitte in einem der unten vorhandenen Themen oder über einen neuen Beitrag mit. Hierzu können sie einfach einen Beitrag in einem zum Thema passenden Forum anlegen, welcher automatisch mit dieser Seite verknüpft wird.