Conexão Oracle Database – cx_Oracle – Oracle API – Python

Publicado: 10 de maio de 2014 em Python

A linguagem Python possui vários módulos adicionais e você pode usar o módulo cx_Oracle que é importado para fornecer a API para acessar o banco de dados Oracle.

Download: http://cx-oracle.sourceforge.net/

Oracle API para Python

1 –  Após efetuar o download para seu sistema operacional no link acima abra o instalador:

Local

Local

2 – Aguarde o andamento da instalação:

Andamento

Andamento

3 – Clique em finalizar para terminar a instalação:

Concluir

Concluir

4 – Abra sua IDE preferida e utilize o código abaixo:

Programa

Programa

Exemplo:

Neste exemplo criamos uma conexão com o Oracle Database XE utilizando a API Oracle para Python.

Python

#!/usr/bin/env python
# -*- coding: latin-1 -*-
# Desenvolvimento Aberto
# ConexaoOracle.py

# importa modulos
from Tkinter import *
import tkMessageBox
import cx_Oracle

# Cria formulario
formulario = Tk(className='Oracle XE - 11g')
formulario.geometry("300x200+300+300")

# Cria janela para menssagem
janela = Tk()
janela.wm_withdraw()

# Evento para o botão
def conectar():
    # Cria string de conexão
    sconexao = eusuario.get()+ "/" + esenha.get() + "@localhost/" + esid.get()
    try:
        con = cx_Oracle.connect(sconexao)
        tkMessageBox.showinfo(title="Menssagem", message="Conectado com Sucesso!", parent=janela)
    except ValueError:
        tkMessageBox.showinfo(title="Menssagem", message="Erro de Conexão", parent=janela)

# Cria componentes
titulo = Label(formulario, text="Oracle XE - Python")

lusuario = Label(formulario, text="Digite seu usuário:")
lsenha = Label(formulario, text="Digite sua senha:")
lsid = Label(formulario, text="Digite o Oracle SID:")

eusuario = Entry(formulario)
esenha = Entry(formulario, show="*")
esid = Entry(formulario)

botao = Button(formulario, text="Conectar", command=conectar)

# Cria layout de tela
titulo.grid(row=0, sticky=W+E+N+S, pady=10)
lusuario.grid(row=1, sticky=W, padx=20)
eusuario.grid(row=1, column=1, pady=5)
lsenha.grid(row=2,sticky=W, padx=20)
esenha.grid(row=2, column=1, pady=5)
lsid.grid(row=3, sticky=W, padx=20)
esid.grid(row=3, column=1, pady=5)
botao.grid(row=5, sticky=W, pady=20, padx=20)

# Loop do tcl
mainloop()

 

Publicidade

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