21.12.2022 Views

python_para_desenvolvedores_2ed

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

174 Banco de dados

cur.execute('select * from tracks')

recset = cur.fetchall()

for rec in recset:

print rec

con.close()

Saída:

(1, 'Kashmir', 'Led Zeppelin')

(2, 'Starless', 'King Crimson')

(3, 'Siberian Khatru', 'Yes')

(4, "Supper's Ready", 'Genesis')

Como o módulo segue fielmente a especificação DBI, o código é praticamente

igual ao exemplo usando o módulo pg. O Psycopg foi projetado com o

objetivo de suportar aplicações mais pesadas, com muitas inserções e

atualizações.

Também é possível escrever funções para PostgreSQL usando Python. Para

que isso seja possível, é preciso habilitar o suporte ao Python no banco,

através do utilitário de linha de comando pelo administrador:

createlang plpythonu <banco>

As linguagens que podem usadas pelo PostgreSQL são chamadas Procedural

Languages (PL) e o sufixo “u” significa untrusted.

Os tipos dos parâmetros e do retorno da função devem ser definidos durante

a criação da função no PostgreSQL.

Exemplo de função:

create function pformat(band text, track text)

returns text

as $$

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!