====== PostgreSQL ====== ===== Installation ===== Source: [[https://pypi.org/project/psycopg2-binary/]] Installer **psycopg2-binary** au lieu de **psycopg2** permet d'éviter d'installer les paquets nécessaires à la compilation de la librairie. pip3 install psycopg2-binary ===== Modules à importer ===== import psycopg2, psycopg2.extras ===== Connexion ===== try: conn = psycopg2.connect( user = username, password = password, host = host, port = port, database = dbname) except(Exception, psycopg2.Error) as error: conn = None print("Erreur: ", error) ===== Déconnexion ===== if conn: conn.close() ===== Requête ===== cursor = conn.cursor(cursor_factory = psycopg2.extras.DictCursor) try: cursor.execute("SELECT id, nom FROM table WHERE id = %s;", (5,)) rows = cursor.fetchall() # Transformation de liste de DictRow en # liste de dictionnaires standards result = [] for row in rows: dico = {} for key, col in enumerate(cursor.description): dico[col[0]] = row[key] result.apend(dico) finally: cursor.close()