GRAVAR DATA EM BRANCO NO MYSQL

 Tópico anterior Próximo tópico Novo tópico

GRAVAR DATA EM BRANCO NO MYSQL

VB.NET

 Compartilhe  Compartilhe  Compartilhe
#346881 - 08/07/2010 16:20:36

ADHEL
PRAIA GRANDE
Cadast. em:Junho/2009


Pessoal boa tarde
Antes de criar o tpico pesquisei aqui no site mas no entendi.Gostaria de saber como fao para gravar os campos que armazenam as datas em branco.

Eu gravo datas assim

sqlInsert = []INSERT INTO Vendas(Data1,Data2,Data3)Values([][] & _
Format(CType(txtData1.Text, Date), []yyyy-MM-dd[]) & [][],[][] & Format(CType(txtData2.Text, Date), []yyyy-MM-dd[]) & [][],[][] & Format(CType(txtData3.Text, Date), []yyyy-MM-dd[]) & [][])[]
Comando = New MySqlCommand(sqlInsert, Conexao)
Comando.ExecuteNonQuery()

O problema que  as vezes algum campo ficar em branco e desse jeito que postei d erro
Agradeo a todos.




#346885 - 08/07/2010 16:35:20

JONATHANSTECKER
METZ
Cadast. em:Junho/2009


ADHEL,

Eu verifico se a data nula...
Se for, eu fao um insert DBNull.Value




#346892 - 08/07/2010 17:05:19

ADHEL
PRAIA GRANDE
Cadast. em:Junho/2009


JONATHANSTECKER

Desculpe, no entendi.



#346898 - 08/07/2010 17:23:50

JONATHANSTECKER
METZ
Cadast. em:Junho/2009


Coloque uma condio:

Se Data = vazio ento insira DBNull.Value seno insira Format(CType(txtData1.Text, Date), []yyyy-MM-dd[])

Acho que fica assim:

sqlInsert = []INSERT INTO Vendas(Data1,Data2,Data3)Values([][] & _
If txtData1.Text = [][] then DBNull.Value else Format(CType(txtData1.Text, Date), []yyyy-MM-dd[])  & [][],[][] & If txtData2.Text = [][] then DBNull.Value else Format(CType(txtData2.Text, Date), []yyyy-MM-dd[]) & [][],[][] & If txtData3.Text = [][] then DBNull.Value else Format(CType(txtData3.Text, Date), []yyyy-MM-dd[]) & [][])[]
Comando = New MySqlCommand(sqlInsert, Conexao)
Comando.ExecuteNonQuery()




#349130 - 02/08/2010 11:40:15

ADHEL
PRAIA GRANDE
Cadast. em:Junho/2009


JONATHANSTECKER

Desculpe, a demora.O pc que estava fazendo esse projeto deu problema e estava aguardando uns $$ parar resolver.
Escrevi do jeito que voc falou e da erro na escrita do cdigo.Tentei mudar mas continua dando erro na escrita do cdigo.
Enfim no consegui.





Resposta escolhida #349206 - 02/08/2010 17:50:38

KILLER
JM
Cadast. em:Março/2010


ADHEL no sei se assim que voc quer, mais funciona:

    Dim Campos As String = [][]
    Dim Dados As String = [][]

    If IsDate(txtData1.Text) Then
      If Campos = [][] Then
        Campos = []Data1[]
        Dados = [][][] & Format(CType(txtData1.Text, Date), []yyyy-MM-dd[]) & [][][]
      Else
        Campos = Campos & [], Data1[]
        Dados = Dados & [], [][] & Format(CType(txtData1.Text, Date), []yyyy-MM-dd[]) & [][][]
      End If
    End If
    If IsDate(txtData2.Text) Then
      If Campos = [][] Then
        Campos = []Data2[]
        Dados = [][][] & Format(CType(txtData2.Text, Date), []yyyy-MM-dd[]) & [][][]
      Else
        Campos = Campos & [], Data2[]
        Dados = Dados & [], [][] & Format(CType(txtData2.Text, Date), []yyyy-MM-dd[]) & [][][]
      End If
    End If
    If IsDate(txtData3.Text) Then
      If Campos = [][] Then
        Campos = []Data3[]
        Dados = [][][] & Format(CType(txtData3.Text, Date), []yyyy-MM-dd[]) & [][][]
      Else
        Campos = Campos & [], Data3[]
        Dados = Dados & [], [][] & Format(CType(txtData3.Text, Date), []yyyy-MM-dd[]) & [][][]
      End If
    End If
    Comando = New MySqlCommand([]INSERT INTO Vendas([] & Campos & []) VALUES ([] & Dados & [])[], conexao)
    Comando.ExecuteNonQuery()

se eu fosse voc trocaria as caixas de texto por MaskedTextBox e na propriedade Mask colocaria []99/99/9999[] sem aspas ok, s uma dica.

A mente que se abre a uma nova idia jamais voltar ao seu tamanho original. Albert Einstein

#349247 - 03/08/2010 09:29:51

ADHEL
PRAIA GRANDE
Cadast. em:Junho/2009


JONATHANSTECKER
Obrigado .

KILLER simplesmente voc solucionou melhor do que queria.
Muito OBRIGADO, MESMO.

KILLER depois que resolver umas pendencias aqui.(Alterar a gravao de datas,colocar tudo desse jeito que voc ensinou),
Vou criar mais um tpico sobre Teclas de Atalho.Uma vez voc criou e fiquei  com uma dvida.Aqui no ficou legal.

At mais



 Tópico anterior Próximo tópico Novo tópico


Tópico encerrado, respostas não sao permitidas
Encerrado por ADHEL em 03/08/2010 09:30:10