COMO INSERIR DADOS

JRABELO 07/02/2012 20:33:39
#394220
Olá,
Estou iniciando uma aplicação em VB.NET, mas não tenho muito conhecimento igual ao VB6.
Montei um modulo para conectar ao Banco Access, testei e está funcionando, segue abaixo:

[ô]Import de classe responsável pela conexão de banco de dados de onde iremos utilizar ‘os objetos OleDbConnection, OleDbCommand

Imports System.Data.OleDb

Module Conexao
[ô]Instanciando um novo objeto “conecta” do tipo OleDbConnection para ser utilizado no projeto.

[ô]Instanciando um novo objeto “comando” do tipo OleDbCommand para ser usado no projeto.

Public conecta As New OleDbConnection
Public comando As New OleDbCommand
Public exec As New OleDb.OleDbDataAdapter

[ô]Procedimento para conexão com o banco de dados

Public Sub conectar()
conecta.Close()
conecta.ConnectionString = ([Ô]Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Documents and Settings\Administrador\Meus documentos\Visual Studio 2010\Projects\Escolinha\Escolinha\Escola.mdb;[Ô])
conecta.Open()
comando.Connection = conecta

End Sub

[ô]Procedimento para desconectar do banco de dados.

Public Sub Desconectar()
conecta.Close()
End Sub

[ô]Procedimento para testar conexão com o banco de dados.

Public Sub testaconexao()
Try
Conectar()
MsgBox([Ô]Conexão realizada com sucesso!!![Ô])
Catch ex As Exception
MsgBox([Ô]Não foi possível conectar o banco de dados[Ô])
Desconectar()
End Try
Desconectar()

End Sub

End Module


Agora não estou conseguindo criar um rotina de inserir dados com esse módulo, esse evento seria ao clikar no Botão salvar os Dados dos textbox do formulário.

insert into 'aluno'('ID_Aluno','Data_do_Cadastro','Nome_do_Aluno','Data_de_Nascimento','Turma','Período','Tipo_de_Alergia','Qual_Horário_das_Refeições','Quando_teve_Convulção_ou_Desmaio','Qual_remédio_tomar_para_Febre','Alimenta_se_Sozinha','Aluno_Nervoso','Nome_do_Pai','RG_do_Pai','Pai_Trabalha','Nome_da_Mãe','RG_da_Mãe','Mãe_Trabalha','Endereço','Telefone') values (??????)


Por favor, alguém poderia me ajudar.
LUCASVAZ 08/02/2012 09:33:02
#394246
Olha, não sei se com Access funciona, porem o que eu faço seria o seguinte:
No values(????) voce coloca as variaveis/valores como parametro que você declarou

Exemplo:

Dim ID As Integer
Dim dataCad As Date
Dim nome as String

ID = Form_Exemplo.cadIDAlunolTextBox.Text
dataCad = Form_Exemplo.cadDataTextBox.Text
nome = Form_Exemplo.cadNomeTextBox.text

Dim cSql as String
cSql = [Ô]Insert into aluno(ID_Aluno, Data_do_Cadastro, Nome_do_Aluno) VALUES (@ID, @dataCad, @nome[Ô])

Ai você cria um comando sql passando o comando + a String de conexão (Ex: Dim cmd as New SqlCommand(cSql, conecta)

depois você abra a conexão e manda executar:
Exemplo

cmd.ExecuteNonQuery()


Também tenho pouca experiência em vb.net, mas espero ter ajudado um pouquinho ^^
LUCASVAZ 08/02/2012 09:37:20
#394247
esqueci de passar que ao criar o comando Sql você tem que adicionar os parametros:
Segue abaixo

cmd.Parameters.Add(New SqlParameter([Ô]@ID[Ô], ID))
cmd.Parameters.Add(New SqlParameter([Ô]@dataCad[Ô], dataCad))
cmd.Parameters.Add(New SqlParameter([Ô]@nome[Ô], nome))
LUCASVAZ 09/02/2012 11:42:57
#394327
Favor fechar o tópico caso o assunto tenha sido resolvido.
JRABELO 09/02/2012 23:57:33
#394380
Lucas,

Dessa forma que você, faz terei que declarar um variavel para cada campo da minha tabela Aluno?


Aguardando...
JRABELO 10/02/2012 00:15:52
#394381
Esse exemplo que você indicou é para SQL, estou usando Access !
JRABELO 10/02/2012 23:45:45
#394470
Por favor, alguém poderia me ajudar.
GUIMORAES 11/02/2012 08:38:58
#394474
Olá, bom dia.
O que o Lucas passou, pode ser usado em qualquer banco de dados.
Na sua String, você atribuiu parâmetros, mas os parametros devem ser separados por virgula.

insert into 'aluno'('ID_Aluno','Data_do_Cadastro','Nome_do_Aluno','Data_de_Nascimento','Turma','Período','Tipo_de_Alergia','Qual_Horário_das_Refeições','Quando_teve_Convulção_ou_Desmaio','Qual_remédio_tomar_para_Febre','Alimenta_se_Sozinha','Aluno_Nervoso','Nome_do_Pai','RG_do_Pai','Pai_Trabalha','Nome_da_Mãe','RG_da_Mãe','Mãe_Trabalha','Endereço','Telefone') values (?,?,?,?,?,?)

Tenta ai.
Abraços
TECLA 11/02/2012 09:15:35
#394477
Conseguiu inserir o registro no Access?
JRABELO 13/02/2012 21:00:16
#394631
Ainda não consegui inserir nenhum registro!
TECLA 13/02/2012 22:31:00
#394635
Comece por aqui, baixe o projeto e estude o código fonte.
VB.NET 2005 - Agenda com acesso a dados
Página 1 de 2 [16 registro(s)]
Tópico encerrado , respostas não são mais permitidas