====== Utilizzare il Postgresql con Python grazie a Psycopg2 ====== Autore: **//Fabio Di Matteo//** \\ Ultima revisione: **//24/02/2018 - 16:52//** \\ \\ Psycopg2 รจ un wrapper a libpq per Python e serve per interagire con il db Postgresql. **Select** #!/usr/bin/python import psycopg2 def main(): try: conn_string = "user=fabio password=fabio dbname=test hostaddr=192.168.1.4 port=5432" conn = psycopg2.connect(conn_string) except psycopg2.Error as e: print ("Errore nella connessione: "+ str(e.pgerror)) exit(1) else: print('Connesso.') # Ricavo un oggetto cursor con il quale eseguire le query cursor = conn.cursor() # Cerco di eseguire la mia query try: cursor.execute("SELECT * FROM persone;") records = cursor.fetchall() except psycopg2.Error as e: print ("Errore nella query: "+ str(e.pgerror)) exit(1) else: # Stampo il risultato a video for i in range(0,cursor.rowcount): print( str(records[i][0])+ " " + records[i][1]+ " " + records[i][2]+ " " + records[i][3]+ " " ); conn.close() main() **Insert** #!/usr/bin/python import psycopg2 def main(): try: conn_string = "user=fabio password=fabio dbname=test hostaddr=192.168.1.4 port=5432" conn = psycopg2.connect(conn_string) except psycopg2.Error as e: print ("Errore nella connessione: "+ str(e.pgerror)) exit(1) else: print('Connesso.') # Ricavo un oggetto cursor con il quale eseguire le query cursor = conn.cursor() # Cerco di eseguire la mia query try: cursor.execute("insert into persone (nome, cognome ,email) values ('Python','Postgresql','py@email.com')") conn.commit() except psycopg2.Error as e: print ("Errore nella query: "+ str(e.pgerror)) exit(1) else: print("Query eseguita.") conn.close() main()