#!/bin/evn python import psycopg2 import os DB_NAME = os.environ.get('DB_NAME', 'mailmandb') DB_PASSWORD = os.environ.get('DB_PASSWORD') DB_USER = os.environ.get('DB_USER', 'mailman') conn = psycopg2.connect( host="database", dbname=DB_NAME, user=DB_USER, password=DB_PASSWORD) # mailmandb=# \d address # Table "public.address" # Column | Type | Modifiers # ----------------+-----------------------------+------------------------------------------------------ # id | integer | not null default nextval('address_id_seq'::regclass) # email | character varying | # _original | character varying | # display_name | character varying | # verified_on | timestamp without time zone | # registered_on | timestamp without time zone | # user_id | integer | # preferences_id | integer | # Indexes: # "address_pkey" PRIMARY KEY, btree (id) # "ix_address_email" btree (email) # "ix_address_preferences_id" btree (preferences_id) # "ix_address_user_id" btree (user_id) # Foreign-key constraints: # "address_preferences_id_fkey" FOREIGN KEY (preferences_id) REFERENCES preferences(id) # "address_user_id_fkey" FOREIGN KEY (user_id) REFERENCES "user"(id) # Referenced by: # TABLE ""user"" CONSTRAINT "_preferred_address" FOREIGN KEY (_preferred_address_id) REFERENCES address(id) ON DELETE SET NULL # TABLE "autoresponserecord" CONSTRAINT "autoresponserecord_address_id_fkey" FOREIGN KEY (address_id) REFERENCES address(id) # TABLE "member" CONSTRAINT "member_address_id_fkey" FOREIGN KEY (address_id) REFERENCES address(id) # TABLE "onelastdigest" CONSTRAINT "onelastdigest_address_id_fkey" FOREIGN KEY (address_id) REFERENCES address(id) addresses_cur = conn.cursor() addresses_cur.execute("select id from address where user_id is NULL")