Conexão Oracle Database XE – ODAC 12c – .NET – Visual Studio 2013 – C#

Publicado: 8 de maio de 2014 em C#

Além do software básico de conectividade do cliente Oracle, uma conexão Oracle com acesso aos recursos completos ao banco de dados requer o uso do que é conhecido como um provedor de dados gerenciado onde “gerenciado” refere-se ao código gerenciado pelo .NET. O provedor de dados é a camada entre o código. NET e o software de conectividade de cliente  do Oracle.  O Provedor de Dados Oracle para .NET (ODP.NET) é um ADO NET Oracle 2.0 de alto desempenho que expõe um conjunto completo de características específicas da Oracle e opções de ajuste, incluindo suporte para Real Application Clusters, DB XML e segurança avançada.

Conexão Oracle ODAC

Conexão Oracle ODAC

Obs: Caso não tenha instalado o ODAC 12c em seu computador você encontra um walkthrough de com instalar e configurar tanto o cliente ou o servidor Oracle, em nossa categoria SQL.

Conectando ao Oracle usando ODAC do Visual Studio

1 – Crie um novo projeto C# e Design Time disponha na tela 4 componentes Labels, 3 Textboxs e um Button e configure o layout com na figura abaixo:

Layout e Referencia

Layout e Referencia

2 – Na janela Solution Explorer com o botão direito no projeto clique em Add > Reference, na janela seguinte sobre o menu Assemblies > Extensions escolha a opção  Oracle.DataAccess versão 4.112.2.0 e clique em OK:

Oracle Data Access

Oracle Data Access

3 – Use os trechos do código abaixo para completar o seu código gerado automaticamente.

Exemplo:

Neste exemplo utilizamos os Namespaces Oracle para conectar ao banco de dados usando Oracle Client, é possível distribuir sua aplicação sem que precise da instalação do cliente da Oracle distribuindo certos arquivos dll junto com sua aplicação.

C#

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using Oracle.DataAccess.Client; // namespace Oracle

namespace ConexaoOracle
{
    public partial class Form1 : Form
    {       

        public Form1()
        {
            InitializeComponent();
        }

        // Cria conexão com o banco de dados Oracle
         static public void getDBConnection(string Username, string Password, string Datasource)
		{
			try
			{
				// String de Conexao
				string connectionString = 

					// Usuario
					"User Id=" + Username +

					// Senha
					";Password=" + Password +

					// TNSnames
					";Data Source=" + Datasource;

				//Conecta ao datasource usando a conexão Oracle
                OracleConnection conn = new OracleConnection(connectionString);

				//Abre a conexão com o banco de dados
				conn.Open();
                MessageBox.Show("Conexão efetuada com sucesso");

			}
			// Retorna erro
			catch (Exception ex)
			{
				// Mostra menssagem de erro
				MessageBox.Show(ex.ToString());

			}
		}

        private void button1_Click(object sender, EventArgs e)
        {
            // Cria conexão
            getDBConnection(textBox1.Text, textBox2.Text, textBox3.Text);

        }       

    }
}
Publicidade
comentários
  1. Diego disse:

    Muito obrigado pela ajuda,

    Tive que fazer uma pequena alteração informando host e porta em “Data Source”:

    De:
    // TNSnames
    “;Data Source=” + Datasource;

    Para:
    // TNSnames
    “;Data Source=localhost:1521/

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair /  Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair /  Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair /  Alterar )

Conectando a %s