O Oracle Database é considerado um dos bancos de dados relacionais mais populares. Isso ocorre porque vem com recursos para aplicações pequenas a massivas.
Portanto, não é de surpreender que você encontre um cenário em que você precise conectar um aplicativo Python a um banco de dados Oracle.
Através deste post, você entenderá o básico de conectar um aplicativo Python a um banco de dados Oracle usando a interface CX_oracle.
O que é cx_oracle?
CX_oracle é um módulo Python gratuito e de código aberto que permite conectar um aplicativo Python a um banco de dados Oracle. O módulo está em conformidade com as especificações da API do banco de dados Python, tornando -a uma escolha popular para executar comandos PL/SQL usando Python.
Você pode verificar o código -fonte do módulo no recurso definido abaixo:
https: // github.com/oracle/python-cx_oracle
Requisitos
Para seguir este tutorial, você precisará de acesso ao seguinte:
Você também pode usar uma instalação remota de banco de dados Oracle. Lembre -se de que você pode precisar das credenciais para o servidor de destino.
Etapa 1 - Configurando um usuário de banco de dados
A primeira etapa é configurar um novo usuário de banco de dados para o seu aplicativo Python. Você pode pular esta etapa se já tiver um usuário de banco de dados existente que deseja usar.
Embora esta etapa não seja um requisito, é bom limitar o aplicativo a um banco de dados específico e permissão no caso de um compromisso de segurança.
Comece lançando o comando SQL Plus, como mostrado:
$ sqlplusEm seguida, insira o nome de usuário para o usuário privilegiado para o qual deseja se conectar. Isso solicitará uma senha que você definiu durante a instalação do seu banco de dados.
Digite Nome de usuário: SYS como SYSDBA
Digite a senha: **********
Depois de conectado, você deve ser jogado no shell PL/SQL como:
Conectado a:
Oracle Database 19C Enterprise Edition Release 19.0.0.0.0 - ProduçãoVocê também pode executar o comando acima para fazer login diretamente no PDB:
sqlplus sys/senha@pdborcl como sysdbaSubstitua o nome de usuário e a senha pelas suas credenciais de destino.
Depois de conectado, execute o comando abaixo para criar um usuário.
SQL> Criar usuário Linuxhint;Altere o usuário criado e defina as propriedades de destino, como espaço de tabela e limite de cota.
SQL> Alter o usuário linuxhintA consulta acima define o espaço de tabela padrão, o espaço de tabela temporário e o limite de cota do usuário criado, respectivamente.
Por fim, conceda as permissões necessárias ao usuário criado, conforme mostrado:
SQL> Grant Create Tabela,A consulta acima concede a permissão do usuário para criar vários objetos de banco de dados, como tabelas, visualizações, procedimentos, gatilhos, vistas materializadas, sequências, etc.
Por fim, defina uma senha para o usuário -alvo como:
SQL> Alter o usuário Linuxhint identificado por senha;Você pode sair da sessão SQL Plus e prosseguir para a próxima seção.
Etapa 2 - Instalando o módulo CX_oracle Python
A próxima etapa é configurar e instalar o módulo CX_oracle no Python. Esta etapa exige que você tenha Python e Pip instalado em sua máquina.
Verifique nossos tutoriais sobre o assunto para saber mais.
Execute o comando pip:
python3 -m pip install cx_oracle -upgradeDepois de configurar, podemos prosseguir com nossa configuração de aplicativo.
Etapa 3 - Configuração do aplicativo
Comece criando o diretório pai para armazenar o código do seu aplicativo:
$ mkdir orclpyNavegue no diretório criado e defina um novo DB_CONFIG.arquivo py. Isso será usado para armazenar a configuração do banco de dados.
$ cd orclpy && touch db_config.pyEdite o db_config.Arquivo PY com seu editor de texto favorito e adicione as informações de configuração do banco de dados, conforme mostrado na amostra abaixo:
$ vim db_config.pyInformações de configuração:
Usuário = 'Linuxhint'O arquivo de configuração mantém informações para fazer login no servidor. O usuário e as senhas se referem ao usuário que criamos na etapa 1.
O DSN define o nome da fonte de dados, que inclui o nome do host do servidor e o nome do banco de dados flugable. Nesse caso, pdborCl1.
Etapa 4 - Conecte -se ao banco de dados
Depois de ter a configuração do conjunto de dados, podemos conectar o aplicativo ao servidor.
Comece criando um arquivo para armazenar seu código de aplicativo:
$ Touch Main.pyEdite o arquivo e adicione o código:
importar cx_oracleComeçamos importando o módulo CX_oracle e o arquivo db_config no código acima.
Em seguida, embrulhamos o bloco de conexão dentro de um bloco de tentativa. O objeto de conexão é armazenado em 'Conn' usando o cx_oracle.Função de conexão.
Se a conexão for bem -sucedida, imprimimos a versão do banco de dados usando o Conn.versão. Caso contrário, pegamos o erro e o imprimimos.
Finalmente, fechamos a conexão usando o Conn.Função Close ().
Podemos executar o código como:
$ python3 main.pyIsso deve retornar a saída como:
$ python main.pyConclusão
Esta é uma discussão sobre o processo de conectar seu aplicativo Python ao seu banco de dados Oracle usando o módulo CX_oracle.