none
inserir em banco oracle RRS feed

  • Pergunta

  • boa noite galera... estou tentando inserir alguns dados do funcionario em um banco oracle, segue o código:

               

    protected void btnCadastrar_Click(object sender, EventArgs e)
            {

                FUNCIONARIO funcionario = new FUNCIONARIO();
                funcionario.LOGIN = txtLogin.Text;
                funcionario.NOME = txtNome.Text;
                funcionario.SENHA = txtSenha.Text;
                funcionario.CARGO = txtCargo.Text;
                funcionario.CPF = Convert.ToInt32(txtCPF.Text);
                funcionario.TELEFONE = Convert.ToInt32(txtTelefone.Text);
                funcionario.EMAIL = txtEmail.Text;

     string query = "INSERT INTO funcionario(login, nome, senha, cargo, cpf, telefone, email) values('" +  funcionario.LOGIN + "', '" + funcionario.NOME + "','" + funcionario.SENHA + "', '" + funcionario.CARGO + "', '" + funcionario.CPF + "', '" + funcionario.TELEFONE + "', '" + funcionario.EMAIL + "')";
                lblAlerta.Text = "Usuário cadastrado com sucesso!";



            }

    sexta-feira, 1 de junho de 2012 21:44

Respostas

  • Marcos na verdade você só criou a string SQL.

    Para inserir em um banco oracle você precisa baixar o Oracle Data Provider do site da Oracle, adicionar uma referencia no seu projeto e criar os objetos necessários para a execução do comando.

    Podem haver variações, mas o acesso ao banco de dados é quase sempre assim:

    1 - Montar a string sql;

    2 - Criar uma conexão com o banco passando a string de conexão do seu banco. Para consultar strings de conexão de vários bancos de dados entre em www.connectionstrings.com.

    3 - Criar um comando e associar a ele a string sql e a conexão já criada.

    4 - Abrir a conexão

    5 - Executar o comando

    6 - Fechar a conexão

    Poste um trecho maior do seu código para que a gente possa te ajudar melhor.

    Abraço, Guilherme

    • Marcado como Resposta Marcos Paulo P.M quinta-feira, 1 de novembro de 2012 12:30
    segunda-feira, 11 de junho de 2012 03:02

Todas as Respostas

  • Olá,

    Está te retornando algum erro?

    Qual a sua dificuldade?

    sexta-feira, 1 de junho de 2012 22:01
  • Você vai ter problemas ao tentar converter um cpf para inteiro!!

    E tenta não ficar concatenando string assim.. tenta usar string.Format().


    http://www.linkedin.com/pub/murilo-kunze/44/191/455

    sexta-feira, 1 de junho de 2012 22:08
  • eu nem estou convertendo o cpf não, to armazenando no banco como string mesmo... 
    sexta-feira, 1 de junho de 2012 22:29
  • o problema é q não está dando nenhum erro, não cadastra, mas também não dá nenhuma exception....

    aí fica até dificil dizer pra você onde está o erro exatamente, acho q tá faltando alguma coisa no metodo

    eu criei o modelo, adicionando um novo ADO.NET Entity Data Model

    lá a conexão está trazendo todas as tabelas direitinho, só não to consguindo cadastrar através deste método...

    se tiver alguma dica...

    desde já obrigado pela atenção

    sexta-feira, 1 de junho de 2012 22:29
  • Marcos.. não está gravando porque você não está colocando código para gravação !! 

    E você está convertendo cpf:

     funcionario.CPF = Convert.ToInt32(txtCPF.Text);
    se o usuário digitar 11111111111 vai dar erro na aplicação.


    http://www.linkedin.com/pub/murilo-kunze/44/191/455

    sexta-feira, 1 de junho de 2012 22:44
  • Marcos.. não está gravando porque você não está colocando código para gravação !! 

    E você está convertendo cpf:

     funcionario.CPF = Convert.ToInt32(txtCPF.Text);
    se o usuário digitar 11111111111 vai dar erro na aplicação.


    http://www.linkedin.com/pub/murilo-kunze/44/191/455

    como assim codigo para gravação???? e a principio coloquei o cpf como string no banco pra não precisar tratar isto, só pra testar a conexão, se tava funcionando legal...

    nesse código aí, ele nao consegue enviar pro banco nao??? oq está errado??

    sexta-feira, 1 de junho de 2012 23:00
  • Marcos.. você está simplesmente montando o comando mas não está mandando executar..

    Da uma lida neste link: http://www.devmedia.com.br/cadastro-de-clientes-em-c-usando-conceitos-de-ado-net-parte-1/16743

     e da uma pesquisada sobre CRUD em c#.


    http://www.linkedin.com/pub/murilo-kunze/44/191/455

    sexta-feira, 1 de junho de 2012 23:16
  • Marcos na verdade você só criou a string SQL.

    Para inserir em um banco oracle você precisa baixar o Oracle Data Provider do site da Oracle, adicionar uma referencia no seu projeto e criar os objetos necessários para a execução do comando.

    Podem haver variações, mas o acesso ao banco de dados é quase sempre assim:

    1 - Montar a string sql;

    2 - Criar uma conexão com o banco passando a string de conexão do seu banco. Para consultar strings de conexão de vários bancos de dados entre em www.connectionstrings.com.

    3 - Criar um comando e associar a ele a string sql e a conexão já criada.

    4 - Abrir a conexão

    5 - Executar o comando

    6 - Fechar a conexão

    Poste um trecho maior do seu código para que a gente possa te ajudar melhor.

    Abraço, Guilherme

    • Marcado como Resposta Marcos Paulo P.M quinta-feira, 1 de novembro de 2012 12:30
    segunda-feira, 11 de junho de 2012 03:02