none
Sequences in Win Azure DB

    Frage

  • Hallo,

    kann man in absehbarer Zeit damit rechnen, dass Sequences in Win Azure SQL unterstützt werden?

    Harald

    Donnerstag, 3. Januar 2013 10:01

Antworten

  • Danke Oliver,

    Werde es mit nachfolgender Funktion lösen - wem's hilft:

     ' Nächste Seqence ausgeben - Work-a-round für Azure
        ' Es können mehrer Sequenzen in der Tabelle 'verwaltet' werden
        ' Voraussetung ist eine Tabelle mit dem Namen 'SqValues' und SequenceNr Felder [SqT1, SqT2, ...]
        ' Liefert 0 im Fehlerfalle
        Public Shared Function GetNextSequenceNr(typ As String) As Int32
            Dim sqnr As Int32 
            Dim conStr As String = ConfigurationManager.ConnectionStrings("xxxxx").ToString
            Dim sql1, sql2 As String
    
            Select Case typ
                Case "T1"
                    sql1 = "Select SqT1 from SqValues"
                    sql2 = "UPDATE SqValues SET SqT1 = SqT1+1"
                Case "T2"
                    sql1 = "Select SqT2 from SqValues"
                    sql2 = "UPDATE SqValues SET SqT2 = SqT2+1"
                Case Else
                    Return 0
            End Select
    
            ' Abfrage durchführen 
            Try
                Using con As SqlConnection = New SqlConnection(conStr)
                    con.Open()
                    Using cmd As SqlCommand = con.CreateCommand
                        'Wert ermitteln
                        cmd.CommandText = sql1
                        sqnr = CInt(cmd.ExecuteScalar())
                        ' Wert erhöhen
                        cmd.CommandText = sql2
                        cmd.ExecuteNonQuery()
                    End Using
                End Using
            Catch ex As Exception
                sqnr = 0
            End Try
            Return sqnr
        End Function

    Gruß

    Harald

    Donnerstag, 3. Januar 2013 13:05

Alle Antworten

  • Hallo Harald,

    vermutlich nein. Mir ist zu mindestens kein konkreter Zeitplan bekannt.

    Schöne Grüße

    Oliver

    Donnerstag, 3. Januar 2013 12:14
    Moderator
  • Danke Oliver,

    Werde es mit nachfolgender Funktion lösen - wem's hilft:

     ' Nächste Seqence ausgeben - Work-a-round für Azure
        ' Es können mehrer Sequenzen in der Tabelle 'verwaltet' werden
        ' Voraussetung ist eine Tabelle mit dem Namen 'SqValues' und SequenceNr Felder [SqT1, SqT2, ...]
        ' Liefert 0 im Fehlerfalle
        Public Shared Function GetNextSequenceNr(typ As String) As Int32
            Dim sqnr As Int32 
            Dim conStr As String = ConfigurationManager.ConnectionStrings("xxxxx").ToString
            Dim sql1, sql2 As String
    
            Select Case typ
                Case "T1"
                    sql1 = "Select SqT1 from SqValues"
                    sql2 = "UPDATE SqValues SET SqT1 = SqT1+1"
                Case "T2"
                    sql1 = "Select SqT2 from SqValues"
                    sql2 = "UPDATE SqValues SET SqT2 = SqT2+1"
                Case Else
                    Return 0
            End Select
    
            ' Abfrage durchführen 
            Try
                Using con As SqlConnection = New SqlConnection(conStr)
                    con.Open()
                    Using cmd As SqlCommand = con.CreateCommand
                        'Wert ermitteln
                        cmd.CommandText = sql1
                        sqnr = CInt(cmd.ExecuteScalar())
                        ' Wert erhöhen
                        cmd.CommandText = sql2
                        cmd.ExecuteNonQuery()
                    End Using
                End Using
            Catch ex As Exception
                sqnr = 0
            End Try
            Return sqnr
        End Function

    Gruß

    Harald

    Donnerstag, 3. Januar 2013 13:05