Usando o MySQL no Python

Publicado por Perfil removido em 13/12/2005

[ Hits: 39.778 ]

 


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

Instale o kernel 3.10 no elementary OS

Anthares - Nova distro no mercado

Grupo de usuários de SL de Chapecó

Dica rápida - O que é um programa de computador

Problemas com o classpath e o driver do MySQL no Java

Leitura recomendada

Gravar campos com acentuação em MySQL via Python

Python + SQLite

SQL: UNION ALL vs UNION e ordenação

CCSM: Bug após atualização do Debian [Resolvido]

Teclas multimídia no Dell Inspiron 1525

  

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




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts