MS-Blog

SQL Server führende Nullen entfernen

Donnerstag, 11. März 2010 von Marco

Mit diesem kleinen Statement kann man führende Nullen in einem Textfeld entfernen.

UPDATE [dbo]. [Customers]
SET [CustomerKey] = REPLACE(LTRIM(REPLACE([CustomerKey], ‚0‘, ‚ ‚)), ‚ ‚, ‚0‘)

Grundsätzlich führt in drei Schritten:

Die 0 werden erst mit einem Leerzeichen ersetzt.
Danach werden mit LTrim die vorderen Leerzeichen entfernt.
Jetzt werden alle Leerzeichen wieder mit 0 ersetzt.

Das ganze geht also nur wenn man keine Leerzeichen im String hat.

NullableDateTimePicker

Sonntag, 07. März 2010 von Marco

Ich hatte heute das Problem das ich mit dem DateTimePicker einen Nothing wert darstellen wollte. Der DateTimePicker hat eine so schöne Checkbox mit der man das Datum deaktivieren kann. Wieso bei einem deaktiviertem nicht einfach ein Nothing als Value zurückgegeben wird bleibt Microsofts Geheimnis. Zum glück können wir das Control aber ableiten 🙂

Public Class NullableDateTimePicker
    Inherits DateTimePicker

    Public Sub New()
        MyBase.New()
        InitializeComponent()
    End Sub

    Public Shadows Property Value() As Nullable(Of DateTime)
         Get
            If Not MyBase.Checked Then
                Return Nothing
            Else
                Return New Nullable(Of DateTime)(MyBase.Value)
            End If
         End Get
         Set(ByVal value As Nullable(Of DateTime))
            If value.HasValue = False Then
                MyBase.Value = DateTime.Now
                MyBase.Checked = False
            Else
                MyBase.Value = value.Value
                MyBase.Checked = True
            End If
        End Set
    End Property
End Class


Indem wir die Valueeigenschaft überschreiben lässt sich daraus ein richtig gutes Control machen 🙂

Gruss Marco

Seiten

Kategorien

Suchen


RSS-Feeds

Blogroll

Meta

 

© Marco – Powered by WordPress – Design: Vlad (aka Perun)