Usuário com melhor resposta
O Visual Studio nao aceita o comando OleDBCommand

Pergunta
-
Boa noite,
Estou usando a conexão do banco de dados Access, só que o problema é que o Visual Studio 2012 não quer reconher esse comando OleDBCommand , que é um dos principais, alguém pode me ajudar?...como faço pra ele aceitar esse comando, e já utilizei o using.System.Data.OleDB;
vou postar meu código:
private void button1_Click(object sender, EventArgs e) { string strcon =@"Provider=Microsof.ACE.OLEDB.12.O; Data Source="+Application.StartupPath+@"Cadastro.accdb"; string comando = "INSERT INTO Paciente (Nome_Paciente, CPF, RG, Data-Nascimento, CEP, Endereco, Numero, Bairro, Telefone_Paciente, Celular, Cidade, Estado, Email) values (@Nome_Paciente, @CPF, @RG, @Data-Nascimento, @CEP, @Endereco, @Numero, @Bairro, @Telefone_Paciente, @Celular, @Cidade, @Estado, @Email)"; OleDbConnection con = new OleDbConnection(strcon); OleDbConnection com = new OleDbCommand (comando, con); com.Parameters.Add("@Nome_Paciente", OleDbType.VarChar).Value = textBox_Nome.Text; com.Parameters.Add("@CPF", OleDbType.VarChar).Value = maskedTextBox_CPF.Text; com.Parameters.Add("@RG", OleDbType.VarChar).Value = maskedTextBox_RG.Text; com.Parameters.Add("@Data-Nascimento", OleDbType.VarChar).Value = masked_Dt_nasci.Text; com.Parameters.Add("@CEP", OleDbType.VarChar).Value = maskedTextBox_CEP.Text; com.Parameters.Add("@Endereco", OleDbType.VarChar).Value = textBox_Endereco.Text; com.Parameters.Add("@Numero", OleDbType.VarChar).Value = textBox_numero.Text; com.Parameters.Add("@Bairro", OleDbType.VarChar).Value = textBox_Bairro.Text; com.Parameters.Add("@Telefone_Paciente", OleDbType.VarChar).Value = maskedTextBox_Telefone.Text; com.Parameters.Add("@Celular", OleDbType.VarChar).Value = maskedTextBox_Celular.Text; com.Parameters.Add("@Cidade", OleDbType.VarChar).Value = textBox_Cidade.Text; com.Parameters.Add("@Estado", OleDbType.VarChar).Value = textBox_Estado.Text; com.Parameters.Add("@Email", OleDbType.VarChar).Value = textBox_Email.Text; try { con.Open(); com.ExecuteNonQuery(); MessageBox.Show("Cadastro Realizado com Sucesso!"); } catch (Exception E) { MessageBox.Show(E.Message); } finally { con.Close(); }
Já tentei fazer de diversar formas, mas o problemas é que o programa não reconhece me ajudem...
- Editado Andressa.s sábado, 25 de junho de 2016 22:31
Respostas
-
Se o codigo que voce postou é o mesmo que voce esta utilizando o erro esta aqui:
OleDbConnection com = new OleDbCommand (comando, con);
Voce nao pode associar um OleDbCommand à um OleDbConnection ...
o correto é:
OleDbCommand com = new OleDbCommand (comando, con);
att
William John Adam Trindade
Analyste-programmeur
----------------------------------------------------------
- Marcado como Resposta Thales F Quintas segunda-feira, 27 de junho de 2016 18:31
- Editado William John Adam TrindadeModerator segunda-feira, 27 de junho de 2016 18:52
Todas as Respostas
-
Olá querida, utilize o SqlCommand:
SqlCommand comando = new SqlCommand(comando, con);
No lugar de:
OleDbConnection com = new OleDbCommand (comando, con);
Final:
using System.Data.SqlClient; private void button1_Click(object sender, EventArgs e) { SqlConnection con = new SqlConnection(@"Password=2016;Persist Security Info=True;User ID=sa;Initial Catalog=dbExemplo;Data Source=.\sqlexpress"); SqlCommand comando = new SqlCommand("INSERT INTO Paciente (Nome_Paciente, CPF, RG, Data-Nascimento, CEP, Endereco, Numero, Bairro, Telefone_Paciente, Celular, Cidade, Estado, Email) values (@Nome_Paciente, @CPF, @RG, @Data-Nascimento, @CEP, @Endereco, @Numero, @Bairro, @Telefone_Paciente, @Celular, @Cidade, @Estado, @Email)", con); comando.Parameters.Add("@Nome_Paciente", SqlDbType.VarChar).Value = textBox_Nome.Text; comando.Parameters.Add("@CPF", SqlDbType.VarChar).Value = maskedTextBox_CPF.Text; comando.Parameters.Add("@RG", SqlDbType.VarChar).Value = maskedTextBox_RG.Text; comando.Parameters.Add("@Data-Nascimento", SqlDbType.VarChar).Value = masked_Dt_nasci.Text; comando.Parameters.Add("@CEP", SqlDbType.VarChar).Value = maskedTextBox_CEP.Text; comando.Parameters.Add("@Endereco", SqlDbType.VarChar).Value = textBox_Endereco.Text; comando.Parameters.Add("@Numero", SqlDbType.VarChar).Value = textBox_numero.Text; comando.Parameters.Add("@Bairro", SqlDbType.VarChar).Value = textBox_Bairro.Text; comando.Parameters.Add("@Telefone_Paciente", SqlDbType.VarChar).Value = maskedTextBox_Telefone.Text; comando.Parameters.Add("@Celular", SqlDbType.VarChar).Value = maskedTextBox_Celular.Text; comando.Parameters.Add("@Cidade", SqlDbType.VarChar).Value = textBox_Cidade.Text; comando.Parameters.Add("@Estado", SqlDbType.VarChar).Value = textBox_Estado.Text; comando.Parameters.Add("@Email", SqlDbType.VarChar).Value = textBox_Email.Text; try { con.Open(); com.ExecuteNonQuery(); MessageBox.Show("Cadastro Realizado com Sucesso!"); } catch (Exception E) { MessageBox.Show(E.Message); } finally { con.Close(); } }
Desculpe, qual o banco de dados que está utilizando?
- Editado Deividy Alcantara sábado, 25 de junho de 2016 22:37
-
-
-
-
Se o codigo que voce postou é o mesmo que voce esta utilizando o erro esta aqui:
OleDbConnection com = new OleDbCommand (comando, con);
Voce nao pode associar um OleDbCommand à um OleDbConnection ...
o correto é:
OleDbCommand com = new OleDbCommand (comando, con);
att
William John Adam Trindade
Analyste-programmeur
----------------------------------------------------------
- Marcado como Resposta Thales F Quintas segunda-feira, 27 de junho de 2016 18:31
- Editado William John Adam TrindadeModerator segunda-feira, 27 de junho de 2016 18:52