INCLUSÃO DE DADOS COM VIRGULA NO BANCO DE DADOS
Pessoal,
Preciso de ajuda!
Estou programando em Visual Basic 2010 express, o que ocorre é que fiz o banco de dados no Access e declarei la os campos com virgula como double e no codigo do programa também, mas na hora de executar e colocar na caixa de texto os valores com virgula ao clicar no meu aplicativo incluir ocorre erro e não sei mais o que fazer!
Alguem pode me mandar uma dica ou um exemplo simplesinho em codigo fonte pra eu ver?
Abração e no aguarde
Preciso de ajuda!
Estou programando em Visual Basic 2010 express, o que ocorre é que fiz o banco de dados no Access e declarei la os campos com virgula como double e no codigo do programa também, mas na hora de executar e colocar na caixa de texto os valores com virgula ao clicar no meu aplicativo incluir ocorre erro e não sei mais o que fazer!
Alguem pode me mandar uma dica ou um exemplo simplesinho em codigo fonte pra eu ver?
Abração e no aguarde
Executa a quey com parâmetros...
link: vb.net parameterized query
link: vb.net parameterized query
Ocorre erro, BLZ QUE ERRO? tem uns 50000 mil erros que podem acontecer post um print do erro ou pelo menos o que esta escrito no erro...
O Erro que aparece é: Tipo de dados incompatÃvel na expressão de critério
O CÓDIGO DO MEU FORM3 é:
Public Class Form3
Private Sub Form3_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
[ô]TODO: This line of code loads data into the [ô]FitoanaliseDataSet.APRESENTACAO[ô] table. You can move, or remove it, as needed.
Me.APRESENTACAOTableAdapter.Fill(Me.FitoanaliseDataSet.APRESENTACAO)
End Sub
Private Sub butVoltar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles butVoltar.Click
Close()
End Sub
Private Sub butNovo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles butNovo.Click
IDTextBox.Clear()
Nome_levantamentoTextBox.Clear()
LocalTextBox.Clear()
AreaTextBox.Clear()
Area_parcelaTextBox.Clear()
FatorTextBox.Clear()
Area_parcelaTextBox.Clear()
N_parcelasTextBox.Clear()
ComprTextBox.Clear()
LargTextBox.Clear()
Nome_levantamentoTextBox.Focus()
End Sub
Private Sub butSalvar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles butSalvar.Click
Try
APRESENTACAOTableAdapter.NovoInsertQuery(Integer.Parse(LIGATextBox.Text), Nome_levantamentoTextBox.Text, LocalTextBox.Text, Double.Parse(AreaTextBox.Text), Double.Parse(FatorTextBox.Text), Double.Parse(Area_parcelaTextBox.Text), Integer.Parse(N_parcelasTextBox.Text), Double.Parse(ComprTextBox.Text), Double.Parse(LargTextBox.Text))
Me.APRESENTACAOTableAdapter.Fill(Me.FitoanaliseDataSet.APRESENTACAO)
MessageBox.Show([Ô]Registro inserido ![Ô])
Catch ex As Exception
MessageBox.Show(ex.Message, [Ô]ATENÇÃO[Ô], MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
End Try
End Sub
Private Sub butDeletar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles butDeletar.Click
Try
If MessageBox.Show([Ô]Confirmar![Ô], [Ô]Confirmação[Ô], MessageBoxButtons.OKCancel, MessageBoxIcon.Information) = vbOK Then
[ô]Acha o codigo da linha, nao o Id! a ser atualizada ou editada
Dim linha As FitoanaliseDataSet.APRESENTACAORow = FitoanaliseDataSet.APRESENTACAO.Rows(APRESENTACAOBindingSource.Position)
Dim codigo As Integer = linha.ID
[ô]Atualiza o dado naquela linha achada acima
APRESENTACAOTableAdapter.DeleteDeleteQuery(codigo)
[ô]ATUALIZAR BANCO DE DADOS
Me.APRESENTACAOTableAdapter.Fill(Me.FitoanaliseDataSet.APRESENTACAO)
MessageBox.Show([Ô]Registro Apagado ![Ô])
Else
End If
Catch ex As Exception
MessageBox.Show(ex.Message, [Ô]ATENÇÃO[Ô], MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
End Try
End Sub
Private Sub butSalvaRA_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles butSalvaRA.Click
Try
[ô]Acha o codigo da linha, nao o Id! a ser atualizada ou editada
Dim linha As FitoanaliseDataSet.APRESENTACAORow = FitoanaliseDataSet.APRESENTACAO.Rows(APRESENTACAOBindingSource.Position)
Dim codigo As Integer = linha.ID
LIGATextBox.Text = 1
[ô]Atualiza o dado naquela linha achada acima
APRESENTACAOTableAdapter.AtualizadorUpdateQuery(Integer.Parse(LIGATextBox.Text), Nome_levantamentoTextBox.Text, LocalTextBox.Text, Double.Parse(AreaTextBox.Text), Double.Parse(FatorTextBox.Text), Double.Parse(Area_parcelaTextBox.Text), Integer.Parse(N_parcelasTextBox.Text), Double.Parse(ComprTextBox.Text), Double.Parse(LargTextBox.Text), codigo)
[ô]ATUALIZAR BANCO DE DADOS
Me.APRESENTACAOTableAdapter.Fill(Me.FitoanaliseDataSet.APRESENTACAO)
MessageBox.Show([Ô]Registro Salvo ![Ô])
Catch ex As Exception
MessageBox.Show(ex.Message, [Ô]ATENÇÃO[Ô], MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
End Try
End Sub
INTER, comigo aconteceu a mesma coisa no meu projeto, daà tive que desativar a tecla [ô],[ô] dos meus formulários...
Citação::
INTER, comigo aconteceu a mesma coisa no meu projeto, daà tive que desativar a tecla [ô],[ô] dos meus formulários...
MILTONSILVA94,
Esta não é a melhor prática. O correto é utilizar parâmetros na inserção de dados.
ex:
sql = [Ô]Insert into estoque(nome,valor,qtd) values (@nome,@valor,@qtd)[Ô]
Dim cmd As New SqlCommand(sql, connection)
cmd.Parameters.AddWithValue([Ô]@nome[Ô], txtNome.Text)
cmd.Parameters.AddWithValue([Ô]@valor[Ô], cDec(txtValor.Text))
cmd.Parameters.AddWithValue([Ô]@qtd[Ô], cDec(txtQtd.Text))
cmd.ExecuteNonQuery()
Esta seria a forma correta.
Se trabalhar com orientação a objetos, você pode passar uma classe (Classe produtos) como parâmetro para a inserção.
Citação:Esta não é a melhor prática. O correto é utilizar parâmetros na inserção de dados.
Exatamente, o que você deixa ter de problemas após isso é uma festa, foi assim comigo.
Citação::
:
INTER, comigo aconteceu a mesma coisa no meu projeto, daà tive que desativar a tecla [ô],[ô] dos meus formulários...
MILTONSILVA94,
Esta não é a melhor prática. O correto é utilizar parâmetros na inserção de dados.
ex:
sql = [Ô]Insert into estoque(nome,valor,qtd) values (@nome,@valor,@qtd)[Ô]
Dim cmd As New SqlCommand(sql, connection)
cmd.Parameters.AddWithValue([Ô]@nome[Ô], txtNome.Text)
cmd.Parameters.AddWithValue([Ô]@valor[Ô], cDec(txtValor.Text))
cmd.Parameters.AddWithValue([Ô]@qtd[Ô], cDec(txtQtd.Text))
cmd.ExecuteNonQuery()
Esta seria a forma correta.
Se trabalhar com orientação a objetos, você pode passar uma classe (Classe produtos) como parâmetro para a inserção.
Correto GUIMORAES123, vou fazer testes e mudar daà no meu projeto até conseguir daÃ. Obrigado
MILTONSILVA94, Sou iniciante na programação, entendi a logica do código, mas não sei inserir no meu código. Você poderia dentro do me código em anexo adapatar o seu na inserção pra mim por gentileza? assim vou entender bem como se faz!!!!
Pessoal, não esqueçam de mim! me ajudem por favor!!!!1
INTER, o código foi desenvolvido por você mesmo?
Ele tem métodos especÃficos para inserção, deleção e tudo mais, que recebem parâmetros que seriam os valores desejados para cada operação. O comando SQL provavelmente está dentro desses métodos e é neles que você adapta o uso de parâmetros.
Ele tem métodos especÃficos para inserção, deleção e tudo mais, que recebem parâmetros que seriam os valores desejados para cada operação. O comando SQL provavelmente está dentro desses métodos e é neles que você adapta o uso de parâmetros.
Faça seu login para responder