Regis da Silva
Publicado em:

Tue 17 February 2015

←Home

PostgreSql e Python3 - parte 2

Se você já leu o Tutorial Postgresql - parte 1 este post é uma continuação. Aqui nós veremos como manipular um banco de dados PostgreSql no Python3.

postgresql_python.png

Além da instalação mostrada no primeiro post precisaremos de

$ sudo apt-get install python-psycopg2 # para python2
# ou
$ sudo apt-get install python3-psycopg2 # para python3

Começando...

$ sudo su - postgres

Veja o prompt:

postgres@myuser:~$

Criando o banco

$ createdb mydb

Se existir o banco faça

$ dropdb mydb

e crie novamente. Para sair digite

$ exit

Abra o python3.

$ python3
Python 3.4.0 (default, Apr 11 2014, 13:05:18)
[GCC 4.8.2] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>

Importe o psycopg2

>>> import psycopg2

Conectando a um banco de dados existente

>>> conn = psycopg2.connect("dbname=mydb user=myuser")

Abrindo um cursor para manipular o banco

>>> cur = conn.cursor()

Criando uma nova tabela

>>> cur.execute("CREATE TABLE person (id serial PRIMARY KEY, name text, age integer);")

Inserindo dados.O Psycopg faz a conversão correta. Não mais injeção SQL.

>>> cur.execute("INSERT INTO person (name, age) VALUES (%s, %s)",("O'Relly", 60))
>>> cur.execute("INSERT INTO person (name, age) VALUES (%s, %s)",('Regis', 35))

Grava as alterações no banco

>>> conn.commit()

# Select

>>> cur.execute("SELECT * FROM person;")
>>> cur.fetchall()

Fecha a comunicação com o banco

>>> cur.close()
>>> conn.close()
>>> exit()

Leia também

Tutorial Postgresql - parte 1

PostgreSql e Django - parte 3

http://initd.org/psycopg/docs/

http://initd.org/psycopg/docs/usage.html

Topo
comments powered by Disqus