5.4. Database PostgreSQL

5.4.1. Rationale

  • psycopg2

5.4.2. Install

$ pip install psycopg2

5.4.3. Execute

Code 5.10. Psycopg2
import psycopg2

# Connect to an existing database
conn = psycopg2.connect("dbname=test user=postgres")

# Open a cursor to perform database operations
cur = conn.cursor()

# Execute a command: this creates a new table
cur.execute("CREATE TABLE test (id serial PRIMARY KEY, num integer, data varchar);")

# Pass data to fill a query placeholders and let Psycopg perform
# the correct conversion (no more SQL injections!)
cur.execute("INSERT INTO test (num, data) VALUES (%s, %s)", (100, "abc'def"))

# Query the database and obtain data as Python objects
cur.execute("SELECT * FROM test;")
# (1, 100, "abc'def")

# Make the changes to the database persistent

# Close communication with the database