Conexão IBM DB2 Express-C – Python DBI driver for DB2 – Ibm_db API – Python

Publicado: 10 de maio de 2014 em Python

A API ibm_db oferece uma variedade de funções úteis para acessar e manipular dados em um banco de dados de um servidor de dados IBM ®. A API inclui funções para se conectar a um banco de dados, executar e preparar instruções SQL, buscar linhas de conjuntos de resultados, chamar procedimentos armazenados, finalizar e reverter transações, manipular tratamento de erros e recuperação de metadados.

IBM DB2 - Python

IBM DB2 – Python

Python DBI driver for DB2 (LUW, zOS, i5) and IDS

Essa extensão é a implementação de banco de dados com especificação da API Python v2.0. A extensão suporta DB2 (LUW, zOS, i5) e IDS (Informix Dynamic Server)

Download: https://pypi.python.org/pypi/ibm_db/

Instalação:

Para instalar a API você pode compilar o código fonte ou utilizar as extensões já compiládas, copiando o arquivo ibm_db.pyd para o diretório de DLL da sua instalação do Python.

Diretório: C:\Python27\DLLs\ibm_db.pyd

Exemplo:

Neste exemplo usamos a API de conexão para o IBM DB2 para efetuar uma conexão com o banco de dados DB2 Express-C.

Python

#!/usr/bin/env python
# -*- coding: latin-1 -*-
# Desenvolvimento Aberto
# ConexaoDB2py

# importa modulos
from Tkinter import *
import tkMessageBox
import ibm_db

# Cria formulario
formulario = Tk(className='IBM DB2 Express-C')
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 = "DATABASE=" + edb.get() + \
               ";HOSTNAME=localhost;PORT=50000;PROTOCOL=TCPIP;" + \
               "UID=" + eusuario.get() + ";" + \
               "PWD=" + esenha.get()
    try:
        con = ibm_db.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="IBM DB2 - Python")

lusuario = Label(formulario, text="Digite seu usuário:")
lsenha = Label(formulario, text="Digite sua senha:")
ldb = Label(formulario, text="Digite o database:")

eusuario = Entry(formulario)
esenha = Entry(formulario, show="*")
edb = 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)
ldb.grid(row=3, sticky=W, padx=20)
edb.grid(row=3, column=1, pady=5)
botao.grid(row=5, sticky=W, pady=20, padx=20)

# Loop do tcl
mainloop()

 

Anúncios

Deixe um comentário

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

Logotipo do WordPress.com

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

Foto do Google+

Você está comentando utilizando sua conta Google+. 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