none
Ajuda com comando While. RRS feed

  • Pergunta

  • Boa noite amigos do Fórum. Estou tentando inserir em uma tabela 31 registros onde a cada inserção acrescenta-se um dia. no campo data totalizando 31 dias do mês de janeiro. Se alguém souber aonde estou errando, ficarei grato pela ajuda.

    Dim vdata As DateTime = "01/08/2012"
    Dim vhora As DateTime
    Dim str As String = "INSERT INTO folha_modelo (vigencia, data, ent1, sai1, ent2, sai2, ent3, sai3) VALUES ('Janeiro', '" & vdata & "', '" & vhora & "', '" & vhora & "', '" & vhora & "', '" & vhora & "', '" & vhora & "', '" & vhora & "')"

            Dim con As New SqlConnection(My.Settings.conexao)
            Dim cmd As New SqlCommand(str, con)

            Try
                con.Open()
                While vdata < "01/09/2012"
                    cmd.ExecuteNonQuery()
                    vdata.AddDays(+1)
                End While
                MsgBox("Folha gerada com sucesso.")
            Catch ex As Exception
            Finally
                con.Close()
                cmd.Dispose()
            End Try
        End Sub

    sexta-feira, 3 de agosto de 2012 01:15

Respostas

  • Que vacilo vergonhoso! foi preciso só mais um copo de café pra enchergar.

                While vdata < "01/09/2012"
                    cmd.ExecuteNonQuery()
                    vdata = vdata.AddDays(+1)
                End While

    Obs: o insert eu passei pra dentro do laçõ se não o parâmetro não é atualizado.

    Se alguém tentou, obrigado...

    domingo, 5 de agosto de 2012 14:57

Todas as Respostas

  • Estrutura da tabela folha_modelo

    id(int), vigencia(nchar20), e o resto é Datetime.

    sexta-feira, 3 de agosto de 2012 01:34
  • Estrutura da tabela folha_modelo

    id(int), vigencia(nchar20), e o resto é Datetime.


    O comando está inserindo registros porém não acrescenta um dia conforme determinei na linha " vdata.AddDays(+1)", e o loop fica infinito.
    sexta-feira, 3 de agosto de 2012 01:39
  • Que vacilo vergonhoso! foi preciso só mais um copo de café pra enchergar.

                While vdata < "01/09/2012"
                    cmd.ExecuteNonQuery()
                    vdata = vdata.AddDays(+1)
                End While

    Obs: o insert eu passei pra dentro do laçõ se não o parâmetro não é atualizado.

    Se alguém tentou, obrigado...

    domingo, 5 de agosto de 2012 14:57
  • Acontece nas melhores mesas de trabalho!

    =]


    hurbem

    segunda-feira, 6 de agosto de 2012 13:38