Jump to content
Fórum Script Brasil
  • 0

Gravando NULL no BANCO (VB 2010 + SQL SERVER 2008 R2)


Diego Felipe

Question

Estou alterando um sistema que eu tinha construido anteriormente, na minha tela de cadastro de clientes, preciso alterar alguns campos pra que eles não sejam mais obrigatórios, fiz isso no banco, setei as colunas da tabela de cliente para null, mas agora estou com um problema:

Me parece que as procedures não aceitam receber valores vazios e gravar no banco, preciso de alguma solução que permita que eu receba as informacoes dos campos do vb mesmo vazias e grave null no banco. Eu entrei no sql server e vi que se eu rodar a procedure manualmente, tenho a opção de passar nulo nos campos, mas como fazer isso via VB + SQL?

veja um trecho do código onde eu passo os parametros pra uma operacao chamada SALVA_REGISTRO ()

Public Sub salva_registro()
        Try
            util.bd.SP_I_APL_ENDERECO(Me.cboEstado.Text, Me.txtCidade.Text, Me.txtBairro.Text, Me.txtRua.Text, Me.txtNumero.Text, Me.mskCep.Text)
            Dim codigoEnd = util.bd.fs_c_apl_endereco
            util.bd.SP_I_APL_PESSOA(Me.txtNomeCliente.Text, codigoEnd, Me.mskTelefone.Text, Me.txtEmailCliente.Text, Me.mskRg.Text, Me.mskCpf.Text)
            Dim codigoPes = util.bd.fs_c_apl_pessoa
            MsgBox("Dados Gravados com Sucesso!")
            util.bd.SP_I_APL_CLIENTE(codigoPes)
            util.bd.SP_S_APL_CLIENTEFULL()

        Catch ex As Exception
            MsgBox("Ocorreu um erro ao salvar: Os Campos obrigatórios estão vazios! " & ex.Message, _
            MsgBoxStyle.Critical, "Erro ao Salvar")
        End Try
    End Sub

Link to comment
Share on other sites

3 answers to this question

Recommended Posts

  • 0

Diego, no caso você vai ter que fazer testes de valores para cada TextBox seu.

Dim strEstado,
      strCidade,
      strBairro,
      strRua,
      strNumero,
      strCEP,
      strNomeCliente,
      strCodigoEnd,
      strTelefone,
      strEmail,
      strCPF,
      strRG As String

strEstado = Me.cboEstado.Text

If Me.txtCidade.Text.Trim = "" Then
    strCidade = "NULL"
Else
    strCidade = Me.txtCidade.Text
End If

...
'E os demais campos

'Se tiver algum campo vazio, a variável correspondente ao TextBox agora tem como valor o texto NULL.
util.bd.SP_I_APL_ENDERECO(strEstado, strCidade, strBairro, strRua, strNumero, strCEP)

Link to comment
Share on other sites

  • 0
Diego, no caso você vai ter que fazer testes de valores para cada TextBox seu.

Dim strEstado,
      strCidade,
      strBairro,
      strRua,
      strNumero,
      strCEP,
      strNomeCliente,
      strCodigoEnd,
      strTelefone,
      strEmail,
      strCPF,
      strRG As String

strEstado = Me.cboEstado.Text

If Me.txtCidade.Text.Trim = "" Then
    strCidade = "NULL"
Else
    strCidade = Me.txtCidade.Text
End If

...
'E os demais campos

'Se tiver algum campo vazio, a variável correspondente ao TextBox agora tem como valor o texto NULL.
util.bd.SP_I_APL_ENDERECO(strEstado, strCidade, strBairro, strRua, strNumero, strCEP)

Olá, obrigado por ajudar, mas eu consegui resolver setando para 0 um campo numerico que estava recebendo string e por isso não estava permitindo gravar no banco, dai eu verifiquei, o campo está vazio? se estiver sete 0 antes de gravar no banco rsrs. Muito Obrigado mesmo assim!

Alias, como faço pra marcar o tópico como resolvido?

Link to comment
Share on other sites

  • 0

Legal que conseguiu resolver :)

Marcar como resolvido não tem. Você pode pegar seu primeiro post deste tópico, editar e colocar no título [Resolvido]. Isso ajuda o pessoal que pesquisa no Google a entrar diretamente aqui, caso tenha a mesma dúvida que a sua.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      152.2k
    • Total Posts
      652k
×
×
  • Create New...