Usando o MySQL no Python

Publicado por Perfil removido em 13/12/2005

[ Hits: 40.186 ]

 


Usando o MySQL no Python



Se você necessita de um banco de dados para salvar informações em seus programas do Python, os principais que podem ser acessados por ele são: MySQL, SQLite, PostgreSQL e Interbase/Firebird. Falaremos sobre o MySQL.

O Python oferece suporte ao MySQL usando o módulo MySQLdb:
Suporta o MySQL a partir da versão 3.22-4.1 e o Python a partir da versão 1.5.2-2.4.

Você pode baixar o source em:

http://prdownloads.sourceforge.net/.../MySQL-python-1.2.0.tar.gz?download

E, se trabalhar com Zope, pode pegar o ZMySQLDA, que é um adaptador para Zope, em:

http://prdownloads.sourceforge.net/.../ZMySQLDA-2.0.8.tar.gz?download

Ou se usar Debian ou uma distribuição baseada, baixe o MySQLdb usando:

# apt-get install python-mysqldb

E o ZMySQLDA:

# apt-get install zope-mysqlda NOTA: Se desejar trabalhar o ZMySQLDA no Zope, veja também o artigo do Fábio Rizzo:
No site da página (no Sourceforge) você também pode baixar o binário para Windows. Mas aqui vou apenas falar sobre seu uso no Python no sistema Linux.

Após ter tudo configurado, é só carregar o módulo no seu código, usando:

# código retirado de http://www.pythonbrasil.com.br/moin.cgi/BancoDeDadosSql
import MySQLdb # carregando o módulo
con = MySQLdb.connect('servidor', 'usuario', 'senha') # conecta no servidor
con.select_db('banco de dados') # seleciona o banco de dados
cursor = con.cursor() # é preciso ter um cursor para se trabalhar
cursor.execute('ALGUM SQL') # faz alguma query sql
# aqui você pode usar três maneira para pegar o resultado:
rs = cursor.fetchone() # pega uma linha;
rs = cursor.fetchall() # pega todas as linhas;
rs = cursor.dictfetchall() # pega todas as linhas, cada linha tem um dicionário com os nomes dos campos
print(rs[0]) # imprime o valor da primeira coluna

E assim você já pode usar um banco de dados em seus códigos Python. :-)

Outras dicas deste autor

Instalando o aMSN 0.97.2 no Slackware 12 sem compilar nada

Como colocar imagem nos botões do Gambas3 [vídeo]

Samba - Consertando bug com o Nautilus no Ubuntu 8.04

Unity Tweak Tool - Personalizando Ubuntu 13.04

Driver "nvidia" no Mandrake/Mandriva com pacotes rpm

Leitura recomendada

Gravar campos com acentuação em MySQL via Python

Python + SQLite

Dicionário em português no Firefox 2

Slackware + NetBeans 6.1

Configurar o Squid para limitar o tamanho do cache

  

Comentários
[1] Comentário enviado por matheusslima em 23/12/2005 - 03:50h

Interessante kra, simples, mas interessante :-)

[2] Comentário enviado por ciberman_gi em 19/05/2007 - 17:21h

Achei interesante mas vc poderia colocar algo como pegar o valor de um campo expecifico em uma tabela.

[3] Comentário enviado por edudobay em 23/06/2007 - 17:38h

Na verdade, o MySQLdb não suporta o método dictfetchall() (apesar de não estar notado na página de onde você tirou o código). Mas é fácil fazer uma implementação dele, em não mais que duas linhas.



Contribuir com comentário