BOTAO INSERIR - HELP

DOUGLASBRAGA 23/10/2011 00:49:41
#387472
-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
ALTAIR148 23/10/2011 10:17:12
#387480
Bom dia,

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.
DOUGLASBRAGA 23/10/2011 10:59:36
#387481
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!
RODRIGOFERRO 23/10/2011 11:49:24
#387482
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)
DOUGLASBRAGA 23/10/2011 18:04:58
#387497
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[Ô].
ALTAIR148 23/10/2011 19:18:46
#387501
Posta ai como estas fazendo.
DOUGLASBRAGA 23/10/2011 19:26:31
#387502
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
ALTAIR148 23/10/2011 19:32:50
#387505
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()






DOUGLASBRAGA 23/10/2011 20:07:30
#387506
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!
ALTAIR148 24/10/2011 07:37:53
#387515
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
RODRIGOFERRO 24/10/2011 08:14:03
#387518
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
Página 1 de 2 [15 registro(s)]
Tópico encerrado , respostas não são mais permitidas