INSERT INTO
Amigo, apanhando e feio para aprender vb.net.
iniciando do básico.
qual a melhor prática de usar esse código abaixo para cadastrar...
iniciando do básico.
qual a melhor prática de usar esse código abaixo para cadastrar...
Private Sub btnGravEdit_Click(sender As Object, e As EventArgs) Handles btnGravEdit.Click
Try
ConectarBD() [ô]Abro o banco de dados
Cmd.CommandType = CommandType.Text
Cmd.CommandText = [Ô]INSERT INTO TBPRODUTO (DESCRICAO) VALUES (@DESCRICAO);[Ô]
Cmd.Parameters.Add(New FbParameter([Ô]@DESCRICAO[Ô], txt_RazaoSocial.Text))
[txt-color=#e80000][ô]cnn.Open() ---> dando erro nessa linha[/txt-color]
Cmd.ExecuteNonQuery()
[ô]cnn.Close()
Catch ex As Exception
[ô]mesg erro
Finally
[ô]msg erro
End Try
End Sub
Moreira, provavelmente vc já está abrindo o banco no ConectaBD().
Quanto a melhor prática de usar códigos desse tipo: eu sempre crio procedures para ler, escrever, deletar e atualizar.
O código fica mais [Ô]limpo[Ô] e fácil de ler.
Abraços
Quanto a melhor prática de usar códigos desse tipo: eu sempre crio procedures para ler, escrever, deletar e atualizar.
O código fica mais [Ô]limpo[Ô] e fácil de ler.
Abraços
Dim query as String = String.Empty
query = [Ô]INSERT INTO student (colName, colID, colPhone, colBranch, colCourse, coldblFee) VALUES (@colName,@colID, @colPhone, @colBranch,@colCourse, @coldblFee)[Ô]
Using conn as New SqlConnection([Ô]connectionStringHere[Ô])
Using comm As New SqlCommand()
With comm
.Connection = conn
.CommandType = CommandType.Text
.CommandText = query
.Parameters.AddWithValue([Ô]@colName[Ô], strName)
.Parameters.AddWithValue([Ô]@colID[Ô], strId)
.Parameters.AddWithValue([Ô]@colPhone[Ô], strPhone)
.Parameters.AddWithValue([Ô]@colBranch[Ô], strBranch)
.Parameters.AddWithValue([Ô]@colCourse[Ô], strCourse)
.Parameters.AddWithValue([Ô]@coldblFee[Ô], dblFee)
End With
Try
conn.open()
comm.ExecuteNonQuery()
Catch(ex as SqlException)
MessageBox.Show(ex.Message.ToString(), [Ô]Error Message[Ô])
End Try
End Using
End USing
Bom dia!
Todos meus Insert Intos são feitos através do meu framework de mapeamento objeto relacional.
Basicamente, eu mapeio uma entidade com os campos do banco de dados.
E usando Reflection, pego os valores, nomes dos campos e tipo da propriedade pra montar o Insert Into.
Gosto desse método porque sei exatamente o que está rolando com meu código, até porque não tenho pleno domÃnio do Entity Framework.
Mas usar EF também é uma ótima ideia. Ferramenta muito poderosa, cheia de recursos e que está sendo muito bem vista no mercado.
Abraços!
Todos meus Insert Intos são feitos através do meu framework de mapeamento objeto relacional.
Basicamente, eu mapeio uma entidade com os campos do banco de dados.
E usando Reflection, pego os valores, nomes dos campos e tipo da propriedade pra montar o Insert Into.
Gosto desse método porque sei exatamente o que está rolando com meu código, até porque não tenho pleno domÃnio do Entity Framework.
Mas usar EF também é uma ótima ideia. Ferramenta muito poderosa, cheia de recursos e que está sendo muito bem vista no mercado.
Abraços!
Coloque aà o erro que tá dando. Será que não faltou um Cmd.Connection = cnn?
Mudei algumas coisas. ainda nao consigo gravar
Private Sub btnGravEdit_Click(sender As Object, e As EventArgs) Handles btnGravEdit.Click
ConectarBD() [ô]Abro o banco de dados
Cmd.CommandText = [Ô]INSERT INTO TBPRODUTO(DESCRICAO) VALUES(@DESCRICAO)[Ô]
Cmd.Parameters.Add([Ô]@DESCRICAO[Ô], FbDbType.VarChar).Value = txt_NomeFantasia.Text
Cmd.Connection = cnn
Cmd.CommandType = CommandType.StoredProcedure
Try
cnn.Open()
Cmd.ExecuteNonQuery()
Catch ex As Exception
[ô]MessageBox.Show(message.ToString(), [Ô]Error Message[Ô])
End Try
End Sub
E o erro gerado?
Citação::
E o erro gerado?
ERRO
An unhandled exception of type [ô]System.ArgumentException[ô] occurred in FirebirdSql.Data.FirebirdClient.dll
Additional information: FbParameterCollection already contains FbParameter with ParameterName [ô]@DESCRICAO[ô].
Se é [txt-color=#007100]StoredProcedure[/txt-color] porque do[txt-color=#e80000] Insert[/txt-color]
Private Sub btnGravEdit_Click(sender As Object, e As EventArgs) Handles btnGravEdit.Click
ConectarBD() [ô]Abro o banco de dados
Cmd.CommandText = [Ô]INSERT INTO TBPRODUTO(DESCRICAO) VALUES(@DESCRICAO)[Ô] [ô] [txt-color=#e80000]Olhe isto[/txt-color]
Cmd.Parameters.Add([Ô]@DESCRICAO[Ô], FbDbType.VarChar).Value = txt_NomeFantasia.Text
Cmd.Connection = cnn
Cmd.CommandType = CommandType.StoredProcedure [ô] [txt-color=#e80000]Olhe isto[/txt-color]
Try
cnn.Open()
Cmd.ExecuteNonQuery()
Catch ex As Exception
[ô]MessageBox.Show(message.ToString(), [Ô]Error Message[Ô])
End Try
End Sub
Private Sub btnGravEdit_Click(sender As Object, e As EventArgs) Handles btnGravEdit.Click
ConectarBD() [ô]Abro o banco de dados
Cmd.CommandText = [Ô]INSERT INTO TBPRODUTO(DESCRICAO) VALUES(@DESCRICAO)[Ô] [ô] [txt-color=#e80000]Olhe isto[/txt-color]
Cmd.Parameters.Add([Ô]@DESCRICAO[Ô], FbDbType.VarChar).Value = txt_NomeFantasia.Text
Cmd.Connection = cnn
Cmd.CommandType = CommandType.StoredProcedure [ô] [txt-color=#e80000]Olhe isto[/txt-color]
Try
cnn.Open()
Cmd.ExecuteNonQuery()
Catch ex As Exception
[ô]MessageBox.Show(message.ToString(), [Ô]Error Message[Ô])
End Try
End Sub
Eu estou usando assim e continua com o mesmo erro
Private Sub btnGravEdit_Click(sender As Object, e As EventArgs) Handles btnGravEdit.Click
ConectarBD() [ô]Abro o banco de dados
Cmd.CommandType = CommandType.StoredProcedure
Cmd.CommandText = [Ô]INSERT INTO TBPRODUTO (DESCRICAO) VALUES (@DESCRICAO)[Ô]
Cmd.Parameters.Add(New FbParameter([Ô]@DESCRICAO[Ô], txt_RazaoSocial.Text))
Try
cnn.Open()
Cmd.ExecuteNonQuery()
Catch ex As Exception
[ô]MessageBox.Show(message.ToString(), [Ô]Error Message[Ô])
End Try
End Sub
Private Sub btnGravEdit_Click(sender As Object, e As EventArgs) Handles btnGravEdit.Click
ConectarBD() [ô]Abro o banco de dados
Cmd.CommandType = CommandType.StoredProcedure
Cmd.CommandText = [Ô]INSERT INTO TBPRODUTO (DESCRICAO) VALUES (@DESCRICAO)[Ô]
Cmd.Parameters.Add(New FbParameter([Ô]@DESCRICAO[Ô], txt_RazaoSocial.Text))
Try
cnn.Open()
Cmd.ExecuteNonQuery()
Catch ex As Exception
[ô]MessageBox.Show(message.ToString(), [Ô]Error Message[Ô])
End Try
End Sub
Amigo qual tipo de base de dados?
Se você For usar Linguagem SQL, pode fazer assim e bem mais simples
Se você For usar Linguagem SQL, pode fazer assim e bem mais simples
Static CMD As FbCommand
Try
SQL = [Ô][Ô]
SQL = [Ô]Insert into cad_cliente(nome,endereco,fone)[Ô] & _
[Ô]values(@nome,@endereco,@fone)[Ô]
CMD = New FbCommand(SQL, conexaoFB)
CMD.Parameters.Add([Ô]@nome[Ô], FbDbType.Char, 80).Value = TXT_nome.Text.Replace([Ô]-[Ô], [Ô][Ô]).ToUpper
CMD.Parameters.Add([Ô]@endereco[Ô], FbDbType.Char, 90).Value = TXT_end.Text
CMD.Parameters.Add([Ô]@fone[Ô], FbDbType.Char, 16).Value = MSK_fone.Text
CMD.ExecuteNonQuery()
CMD.Dispose()
Catch ex As Exception
MsgBox(ex.Message)
CMD.Dispose()
End Try
Tópico encerrado , respostas não são mais permitidas