Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

alexandremanowar

Armazenar campo vazio

Recommended Posts

E ae pessoal

 

Estou tentando armazenar um array de informações em mysql 5 e estou tendo o seguinte problema.

Quando o array vem com todos os campos preenchidos ele armazena beleza, porpem quando ele vem com um ou mais campos do array vazio ele da pau na hora de armazenar. E marca a linha do insert informando o erro.

 

O valor da matriz vem de um arquivo csv que aprendi a manipular em um outro post que fiz esses dias logo eu abro a arquivo da seguinte forma:

 

Dim Valor As New IO.StreamReader(Arquivo)		Dim Ler As String = Valor.ReadToEnd()		Dim Linhas As String() = Ler.Split(vbCrLf)		Dim Qt_linhas As Integer = Linhas.Length		For Each linha As String In Linhas			Dim analisar As String = linha			Dim quebra As String() = analisar.Split(";")			If Not linha.Trim() = "" Then			  Dim cmd As New MySqlCommand("INSERT INTO tabela(campo1,campo2,campo3,campo4)values('" & Trim(quebra(0)) & "','" & Trim(quebra(1)) & "','" & Trim(quebra(2)) & "','" & Trim(quebra(3)) & "')",conn)				cmd.ExecuteNonQuery().......
Então dessa form se o array quebra vem com todos os campo preechidos tipo:

quebra[0] = "aaa"

quebra[1] = "bbb"

quebra[3] = "ccc"

quebra[4] = "ddd"

Ele armazena numa boa mas se vem assim:

quebra[0] = "aaa"

quebra[1] = ""

quebra[3] = "ccc"

quebra[4] = ""

Ou outro campo vazio qualquer não armazena! Como faço para não ignorar osa campos em branco? Ou como coloco uma valor padão no campo em branco tipo

quebra[0] = "aaa"

quebra[1] = "vazio"

quebra[3] = "ccc"

quebra[4] = "vazio"

Eu tente assim

...Dim qt_campos As Integer = quebra.LengthFor each contador As String In qt_campos  If quebra(contador).Trim() = "" Then   quebra(contador) = "vazio"  End IfNext...
Porém esta dando erro nessa linha: If quebra(contador).Trim() = "" Then

 

Como eu arrumo isso? Onde estou errando?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara valeu pela atenção, eu consegui resolver. O amigo Graymalkin me deu uma força, ele corrigiu a minha falha e o código ficou assim:

Dim qt_campos As Integer = quebra.LengthFor contador As Integer = 0 to qt_campos-1  If quebra(contador).Trim() = "" Then   quebra(contador) = "vazio"  End IfNext

Valeu at+

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.