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.
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
http://initd.org/psycopg/docs/
http://initd.org/psycopg/docs/usage.html
"PostgreSql e Python3 - parte 2" de "Regis da Silva" está licenciado com uma Licença Creative Commons - Atribuição-NãoComercial-SemDerivações 4.0 Internacional.
comments powered by Disqus