BOTAO INSERIR - HELP
-Olá pessoal, sou iniciante, e estou começando a usar o visual Basic 2008 com Firebird.
-Ja criei o meu banco de dados usando o IB EXPERT, e consegui fazer a conexao entre o vb2008 e firbird.
-Estou estudando um codigo onde eu consigo exibir , o codigo, o nome e o endereco em 03 textbox e alterar o conteudo clicando no botao.
-Pesquisei muito sobre inserir dados, mas nao encontrei mta coisa,[Ô]ou nao consegui usar o que encontrei[Ô], quem puder me dar uma luz, e dizer o que devo mudar no codigo para adicionar o conteudo das 3 textbox no banco de dados no firebird, ficarei mto grato!!
-Segue o meu codigo:
Imports FirebirdSql.Data.FirebirdClient
Public Class Form1
Dim con As New FbConnection
Dim ds As New DataSet
Dim da As FbDataAdapter
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
con = New FbConnection([Ô]Server=localhost;User=SYSDBA;Passwor d=masterkey;Database=C: este\bd.gdb[Ô])
da = New FbDataAdapter([Ô]SELECT * FROM cliente ORDER BY codigo[Ô], con)
da.Fill(ds, [Ô]cliente[Ô])
Texcodigo.Text = ds.Tables([Ô]cliente[Ô]).Rows(0).Item([Ô]codigo[Ô])
Texnome.Text = ds.Tables([Ô]cliente[Ô]).Rows(0).Item([Ô]nome[Ô])
Texendereco.Text = ds.Tables([Ô]cliente[Ô]).Rows(0).Item([Ô]endereco[Ô])
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim cb As New FbCommandBuilder(da)
ds.Tables([Ô]cliente[Ô]).Rows(0).Item([Ô]nome[Ô]) = Texnome.Text
ds.Tables([Ô]cliente[Ô]).Rows(0).Item([Ô]endereco[Ô]) = Texendereco.Text
da.UpdateCommand = cb.GetUpdateCommand()
da.Update(ds, [Ô]cliente[Ô])
MsgBox([Ô]Registro alterado[Ô])
End Sub
End Class
-Ja criei o meu banco de dados usando o IB EXPERT, e consegui fazer a conexao entre o vb2008 e firbird.
-Estou estudando um codigo onde eu consigo exibir , o codigo, o nome e o endereco em 03 textbox e alterar o conteudo clicando no botao.
-Pesquisei muito sobre inserir dados, mas nao encontrei mta coisa,[Ô]ou nao consegui usar o que encontrei[Ô], quem puder me dar uma luz, e dizer o que devo mudar no codigo para adicionar o conteudo das 3 textbox no banco de dados no firebird, ficarei mto grato!!
-Segue o meu codigo:
Imports FirebirdSql.Data.FirebirdClient
Public Class Form1
Dim con As New FbConnection
Dim ds As New DataSet
Dim da As FbDataAdapter
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
con = New FbConnection([Ô]Server=localhost;User=SYSDBA;Passwor d=masterkey;Database=C: este\bd.gdb[Ô])
da = New FbDataAdapter([Ô]SELECT * FROM cliente ORDER BY codigo[Ô], con)
da.Fill(ds, [Ô]cliente[Ô])
Texcodigo.Text = ds.Tables([Ô]cliente[Ô]).Rows(0).Item([Ô]codigo[Ô])
Texnome.Text = ds.Tables([Ô]cliente[Ô]).Rows(0).Item([Ô]nome[Ô])
Texendereco.Text = ds.Tables([Ô]cliente[Ô]).Rows(0).Item([Ô]endereco[Ô])
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim cb As New FbCommandBuilder(da)
ds.Tables([Ô]cliente[Ô]).Rows(0).Item([Ô]nome[Ô]) = Texnome.Text
ds.Tables([Ô]cliente[Ô]).Rows(0).Item([Ô]endereco[Ô]) = Texendereco.Text
da.UpdateCommand = cb.GetUpdateCommand()
da.Update(ds, [Ô]cliente[Ô])
MsgBox([Ô]Registro alterado[Ô])
End Sub
End Class
Bom dia,
Amigo tenta isso aqui, não testei não, mas acho que não tem erro.
Até mais.
Amigo tenta isso aqui, não testei não, mas acho que não tem erro.
Dim command As New FirebirdClient.FbCommand([Ô]nsert into cliente (codigo, nome, endereco)values(@codigo, @nome, @endereco)[Ô], con)
command.Parameters.AddWithValue([Ô]@codigo[Ô], codigo.text)
command.Parameters.AddWithValue([Ô]@nome[Ô], nome.text)
command.Parameters.AddWithValue([Ô]@endereco[Ô], enedereco.text)
command.Dispose()
command.ExecuteNonQuery()
Até mais.
Bom dia Altair, testei o seu codigo mas nao funcionou.
tive que trocar o [Ô]Dim command As New FirebirdClient.FbCommand[Ô] por [Ô]Dim command As New FbCommand[Ô] para rodar o programa, mas quando clico no botao aparece uma mensagem dizendo, [Ô]Invalid OperationException was unhandled[Ô] e fica marcado no final do codigo a linha [Ô]command.ExecuteNonQuery()[Ô].
Mais alguma sugestao??
Obrigado pela força!
tive que trocar o [Ô]Dim command As New FirebirdClient.FbCommand[Ô] por [Ô]Dim command As New FbCommand[Ô] para rodar o programa, mas quando clico no botao aparece uma mensagem dizendo, [Ô]Invalid OperationException was unhandled[Ô] e fica marcado no final do codigo a linha [Ô]command.ExecuteNonQuery()[Ô].
Mais alguma sugestao??
Obrigado pela força!
Dim command As New FirebirdClient.FbCommand([Ô]nsert into cliente (codigo, nome, endereco)values(@codigo, @nome, @endereco)[Ô], con)
command.Parameters.AddWithValue([Ô]@codigo[Ô], codigo.text)
command.Parameters.AddWithValue([Ô]@nome[Ô], nome.text)
command.Parameters.AddWithValue([Ô]@endereco[Ô], enedereco.text)
[ô]command.Dispose()
command.ExecuteNonQuery()
Da erro quando voce executa ?
acho que é porque deu um Dispose antes de executar...
seria como
*Pego o Copo
*Encho de leite
*Esvazio o Copo
*Bebo o que tem no copo (Vazio)
command.Parameters.AddWithValue([Ô]@codigo[Ô], codigo.text)
command.Parameters.AddWithValue([Ô]@nome[Ô], nome.text)
command.Parameters.AddWithValue([Ô]@endereco[Ô], enedereco.text)
[ô]command.Dispose()
command.ExecuteNonQuery()
Da erro quando voce executa ?
acho que é porque deu um Dispose antes de executar...
seria como
*Pego o Copo
*Encho de leite
*Esvazio o Copo
*Bebo o que tem no copo (Vazio)
Boa tarde ZEROCAL, colei o seu codigo e como o codigo do ALTAIR nao funcionou. vou explicar o q esta acontecendo:
- o [Ô]FirebirdClient.FbCommand[Ô] esta grifado em baixo dele, apresentando a mensagem, [Ô]Type [ô]FFirebirdClient.FbCommand[ô] is not defined[Ô].
- o programa esta executando sim, mas eu tenho q trocar o [Ô]FirebirdClient.FbCommand[Ô] do seu codigo para [Ô]FbCommand[Ô] como o vb2008 sugere.
- quando executo, abre na tela os 3 textbox com o botao, eu preencho os textbox e clico no botao. ao clicar o programa minimiza e volta aos codigos na linha [Ô]command.ExecuteNonQuery()[Ô] com a mensagem dizendo, [Ô]Invalid OperationException was unhandled[Ô] [Ô]Connection must valid and open[Ô].
- o [Ô]FirebirdClient.FbCommand[Ô] esta grifado em baixo dele, apresentando a mensagem, [Ô]Type [ô]FFirebirdClient.FbCommand[ô] is not defined[Ô].
- o programa esta executando sim, mas eu tenho q trocar o [Ô]FirebirdClient.FbCommand[Ô] do seu codigo para [Ô]FbCommand[Ô] como o vb2008 sugere.
- quando executo, abre na tela os 3 textbox com o botao, eu preencho os textbox e clico no botao. ao clicar o programa minimiza e volta aos codigos na linha [Ô]command.ExecuteNonQuery()[Ô] com a mensagem dizendo, [Ô]Invalid OperationException was unhandled[Ô] [Ô]Connection must valid and open[Ô].
Posta ai como estas fazendo.
Ta ai altair:
Imports FirebirdSql.Data.FirebirdClient
Public Class Form1
Dim con As New FbConnection
Dim ds As New DataSet
Dim da As FbDataAdapter
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
con = New FbConnection([Ô]Server=localhost;User=SYSDBA;Passwor d=masterkey;Database=C: este\bd.gdb[Ô])
da = New FbDataAdapter([Ô]SELECT * FROM cliente ORDER BY codigo[Ô], con)
da.Fill(ds, [Ô]cliente[Ô])
Texcodigo.Text = ds.Tables([Ô]cliente[Ô]).Rows(0).Item([Ô]codigo[Ô])
Texnome.Text = ds.Tables([Ô]cliente[Ô]).Rows(0).Item([Ô]nome[Ô])
Texendereco.Text = ds.Tables([Ô]cliente[Ô]).Rows(0).Item([Ô]endereco[Ô])
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim command As New FbCommand([Ô]nsert into cliente (codigo, nome, endereco)values(@codigo, @nome, @endereco)[Ô], con)
command.Parameters.AddWithValue([Ô]@codigo[Ô], Texcodigo.Text)
command.Parameters.AddWithValue([Ô]@nome[Ô], Texnome.Text)
command.Parameters.AddWithValue([Ô]@endereco[Ô], Texendereco.Text)
command.ExecuteNonQuery()
command.Dispose()
End Sub
End Class
Imports FirebirdSql.Data.FirebirdClient
Public Class Form1
Dim con As New FbConnection
Dim ds As New DataSet
Dim da As FbDataAdapter
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
con = New FbConnection([Ô]Server=localhost;User=SYSDBA;Passwor d=masterkey;Database=C: este\bd.gdb[Ô])
da = New FbDataAdapter([Ô]SELECT * FROM cliente ORDER BY codigo[Ô], con)
da.Fill(ds, [Ô]cliente[Ô])
Texcodigo.Text = ds.Tables([Ô]cliente[Ô]).Rows(0).Item([Ô]codigo[Ô])
Texnome.Text = ds.Tables([Ô]cliente[Ô]).Rows(0).Item([Ô]nome[Ô])
Texendereco.Text = ds.Tables([Ô]cliente[Ô]).Rows(0).Item([Ô]endereco[Ô])
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim command As New FbCommand([Ô]nsert into cliente (codigo, nome, endereco)values(@codigo, @nome, @endereco)[Ô], con)
command.Parameters.AddWithValue([Ô]@codigo[Ô], Texcodigo.Text)
command.Parameters.AddWithValue([Ô]@nome[Ô], Texnome.Text)
command.Parameters.AddWithValue([Ô]@endereco[Ô], Texendereco.Text)
command.ExecuteNonQuery()
command.Dispose()
End Sub
End Class
camada vc não esta abrindo a conexao.
con = New FbConnection([Ô]Server=localhost;User=SYSDBA;Passwor d=masterkey;Database=C: este\bd.gdb[Ô])
Dim command As New FbCommand([Ô]nsert into cliente (codigo, nome, endereco)values(@codigo, @nome, @endereco)[Ô], con)
command.Parameters.AddWithValue([Ô]@codigo[Ô], Texcodigo.Text)
command.Parameters.AddWithValue([Ô]@nome[Ô], Texnome.Text)
command.Parameters.AddWithValue([Ô]@endereco[Ô], Texendereco.Text)
command.ExecuteNonQuery()
command.Dispose()
Altair, como eu disse no começo, eu sou iniciante, se vc ou alguem puder colocar no codigo de como abrir e onde eu devo colocar eu agradeceria!
grato!
grato!
Amigo tenta isso abaixo. Na verdade falta a string de conexão.
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
con = New FbConnection([Ô]Server=localhost;User=SYSDBA;Passwor d=masterkey;Database=C: este\bd.gdb[Ô])
Dim command As New FbCommand([Ô]nsert into cliente (codigo, nome, endereco)values(@codigo, @nome, @endereco)[Ô], con)
command.Parameters.AddWithValue([Ô]@codigo[Ô], Texcodigo.Text)
command.Parameters.AddWithValue([Ô]@nome[Ô], Texnome.Text)
command.Parameters.AddWithValue([Ô]@endereco[Ô], Texendereco.Text)
command.ExecuteNonQuery()
command.Dispose()
End Sub
Amigão melhor ainda, posta seu projeto com o banco que a galera vai dar uma olhada no codigo em geral e pode comentar melhor !
Zipa o projeto com o banco junto !
Abraços
Zipa o projeto com o banco junto !
Abraços
Tópico encerrado , respostas não são mais permitidas