Python e Oracle

cx_Oracle é um módulo de extensão do Python que permite acessar bancos de dados Oracle e obedece à especificação de API de banco de dados do Python.

Oracle Instant client

O Oracle Instant client é um componente proprietário para acesso ao banco de dados. Acesse o site da Oracle, e através do link “See Instant Client downloads“, selecione a sua plataforma, como “Instant Client for Linux x86-64“, e realize o download “instantclient-basic-linux.x64-12.1.0.1.0.zip” e “instantclient-sdk-linux.x64-12.1.0.1.0.zip” (requer autenticação). É necessário fazer o cadastro gratuito na Oracle para realizar o download.

mkdir /opt/oracle-instantclient
cd /opt/oracle-instantclient
unzip /path/instantclient-basic-linux.x64-12.1.0.1.0.zip
unzip /path/instantclient-sdk-linux.x64-12.1.0.1.0.zip
export ORACLE_HOME=/opt/oracle-instantclient/instantclient_12_1
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME

cx_Oracle

Acesse “cx_Oracle” e realize o download do item “Source Code only“.

aptitude install python-dev g++ libaio1
cd /usr/src
wget http://ufpr.dl.sourceforge.net/project/cx-oracle/5.1.2/cx_Oracle-5.1.2.tar.gz
tar xzf cx_Oracle-5.1.2.tar.gz
cd cx_Oracle-5.1.2
python setup.py build install

Conexão

import cx_Oracle

try:
    conn = cx_Oracle.connect("%s/%s@%s" % ("usuario", "senha", "127.0.0.1:1521/adm"))
    cursor = conn.cursor()
    cursor.execute("SELECT 1 FROM DUAL")
    # i) fetchall
    print(cursor.fetchall())
    # ii) interator
    for row in cursor:
        print(row)
except cx_Oracle.DatabaseError, e:
    print(e[0].message.strip())
    print("Unable to connect to '%s'. Aborting..." % "127.0.0.1:1521/adm")



 

Reinaldo Gil Lima de Carvalho

Anúncios
  1. Nenhum comentário ainda.
  1. No trackbacks yet.

Deixe um comentário

Faça o login usando um destes métodos para comentar:

Logotipo 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 )

Foto do Google+

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

Conectando a %s