Feedback

VB - VB.Net: Parameter einer SQLite-Abfrage sehen

Veröffentlicht von am 28.02.2018
(0 Bewertungen)
Dieses Code-Snippet verwende ich gerne zum Debuggen. Wenn man im Debugger einen Stoppunkt setzt, kann man im Direktfenster die Abfrage mit den Parameterinhalten ersetzt anzeigen.

Mir ist klar, dass das Snippet Mist liefert, wenn der Parameterinhalt gleich einem Parameternamen ist. Aber zum Debuggen funktioniert es. Mit Änderungen funktioniert es auch mit anderen Datenbank-Commands.
GFU-Schulungen  [Anzeige]

VB.NET Einführung

Die Schulung zeigt Ihnen, wie Sie einfache, benutzerorientierte Programme, die auf Datenbanken zugreifen, in VB.NET eigenständig entwickeln. 

C# Komplett

Sie kennen sich in objektorientierter Programmierung aus. Sie schreiben C++ oder Java? Und nun stehen Sie vor der Aufgabe, in C# Anwendungen zu erstellen. Das C# Komplett-Seminar verschafft Ihnen umfassende Programmierkenntnisse in dieser Sprache. Nach der Schulung entwickeln Sie selbständig Anwendungen mit C#. Sie kennen die Datentypen und Klassenbibliotheken der objektorientierten Programmiersprache C#. Der Komplettkurs setzt bei den Grundlagen von C# ein. Sie arbeiten mit Variablen und konvertieren Typen. Multithreading, Delegates, Generics sind nach dem Seminar für Sie kein Geheimnis mehr.

Module globales

    ''' <summary>
    ''' Übersetzt die Parameter eines SQLite-Commands in lesbaren Code
    ''' </summary>
    ''' <param name="com">SQLiteCommand</param>
    ''' <returns>String</returns>
    Function see_sqlite(ByRef com As SQLiteCommand) As String
        Dim types As New List(Of DbType)
        Dim n, v As String
        types.Add(DbType.Int16)
        types.Add(DbType.Int32)
        types.Add(DbType.Int64)
        types.Add(DbType.Byte)
        types.Add(DbType.UInt16)
        types.Add(DbType.UInt32)
        types.Add(DbType.UInt64)
        types.Add(DbType.Decimal)
        types.Add(DbType.Double)

        Dim tmpsb As New Text.StringBuilder
        tmpsb.Append(com.CommandText)
        com.Parameters.Add("", DbType.Int16)
        For Each pa As SQLiteParameter In com.Parameters
            n = pa.ParameterName.ToString
            If n <> "" Then
                If pa.Value Is Nothing Then
                    v = ""
                Else
                    v = pa.Value.ToString
                End If
                If types.Contains(pa.DbType) Then
                    tmpsb.Replace(n & " ", v & " ")
                    tmpsb.Replace(n & ")", v & ")")
                    tmpsb.Replace(n, v)
                Else
                    tmpsb.Replace(n & " ", "'" & v & "' ")
                    tmpsb.Replace(n & ")", "'" & v & "')")
                    tmpsb.Replace(n, "'" & v & "'")
                End If
            End If
        Next
        Return tmpsb.ToString
    End Function

End Module

Abgelegt unter vb.netsqliteparameter.

Kommentare zum Snippet

 

Logge dich ein, um hier zu kommentieren!