Jak połączyć się i używać PostgreSQL w Pythonie

Najważniejsze kroki do integracji Pythona z PostgreSQL

  • Zacznij od pobrania i instalacji serwera PostgreSQL, dostosowanego do Twojego systemu operacyjnego. Następnie wykorzystaj bibliotekę psycopg2 w Pythonie, aby nawiązać połączenie z bazą danych.
  • Użyj narzędzia pgAdmin4, aby uzyskać niezbędne dane uwierzytelniające, umożliwiające połączenie z serwerem PostgreSQL z poziomu Pythona.
  • Wykorzystuj polecenia SQL w Pythonie, aby tworzyć, sprawdzać lub usuwać bazy danych PostgreSQL, w zależności od potrzeb Twojego projektu.

Gdy tworzysz aplikację w Pythonie, która wymaga dostępu do danych przechowywanych w bazie Postgres, kluczowe jest zrozumienie, jak te dwa elementy można połączyć. Po skutecznym nawiązaniu połączenia, masz możliwość wykonywania zapytań oraz efektywnego manipulowania danymi.

Pobieranie i instalacja PostgreSQL

PostgreSQL to doskonały system zarządzania bazami danych, idealny do zastosowania w rozmaitych projektach programistycznych. Możesz pobrać i zainstalować wersję oprogramowania, która jest odpowiednia dla Twojego konkretnego systemu operacyjnego. Postgres jest dostępny dla popularnych platform, takich jak Windows, macOS oraz dystrybucje Linux, na przykład Ubuntu.

Proces instalacji może różnić się w zależności od używanego systemu, dlatego zaleca się dokładne przestrzeganie instrukcji instalacyjnych, co zapewni płynne i bezproblemowe wdrożenie.

Instalacja wymaganej biblioteki

Aby umożliwić Pythonowi komunikację z PostgreSQL, skorzystaj z biblioteki psycopg2. W celu weryfikacji jej obecności w Twoim środowisku, wykonaj następujące polecenie w interpreterze Pythona:

 import psycopg2 

Jeśli w odpowiedzi pojawi się błąd, sygnalizujący brak modułu psycopg2, zainstaluj bibliotekę za pomocą poniższego polecenia:

 pip install psycopg2 

PIP, będący menedżerem pakietów Pythona, ułatwia proces instalowania bibliotek, niezależnie od tego, czy pracujesz na Windowsie, macOS, czy Linuxie.

Pobieranie danych uwierzytelniających z pgAdmin4

pgAdmin4 to graficzne narzędzie do zarządzania bazami danych PostgreSQL. Możliwe, że zainstalowałeś je razem z PostgreSQL, ale jeśli nie, możesz pobrać pgAdmin4 i zainstalować je oddzielnie.

Oto kroki, które należy podjąć, aby uzyskać dane logowania do serwera:

  1. Uruchom pgAdmin4 z menu aplikacji.
  2. Znajdź i kliknij sekcję „Serwery” w lewej części okna aplikacji.
  3. Wprowadź hasło, które zostało ustawione podczas konfiguracji serwera PostgreSQL.
  4. Po nawiązaniu połączenia z serwerem, kliknij prawym przyciskiem myszy na „PostgreSQL 16”, a następnie wybierz „Właściwości”.
  5. W nowym oknie dialogowym „Właściwości” przejdź do zakładki „Połączenie”.
  6. Zapisz nazwę hosta, numer portu oraz nazwę użytkownika, które są tam wyświetlone.

Nawiązywanie połączenia z serwerem PostgreSQL

Mając już zgromadzone dane uwierzytelniające, możemy użyć biblioteki psycopg2 do połączenia z serwerem. Użyj funkcji connect w następujący sposób, aby nawiązać połączenie:

 conn = psycopg2.connect(host="localhost", port="5432", user="postgres", password='your password here') 

Następnym krokiem jest utworzenie obiektu kursora, który pozwoli na wykonywanie poleceń SQL w środowisku Pythona:

 cur = conn.cursor() 

Na koniec, warto ustawić opcję automatycznego zatwierdzania transakcji, co sprawi, że każda wykonana instrukcja będzie od razu zapisana w bazie danych. Eliminuje to konieczność ręcznego zatwierdzania każdej zmiany:

 conn.set_session(autocommit = True) 

Te trzy instrukcje, wykonane kolejno, pozwolą Ci skutecznie połączyć się z lokalną instancją serwera PostgreSQL.

Tworzenie bazy danych PostgreSQL

Baza danych PostgreSQL to kontener na powiązane tabele. Możesz stworzyć nową bazę danych, używając polecenia SQL CREATE DATABASE. Przekaż je do metody execute obiektu kursora:

 try:
    cur.execute('''CREATE DATABASE DB_NAME''')
except psycopg2.Error as e:
    print(e)

Zawsze warto obsłużyć potencjalne wyjątki. W tym przykładzie, w przypadku błędu, informacja o nim zostanie wypisana. W kodzie produkcyjnym powinieneś rozważyć bardziej zaawansowaną strategię obsługi wyjątków.

Weryfikacja bazy danych w pgAdmin4

Po wykonaniu zapytania tworzącego bazę danych, możesz użyć pgAdmin4 do weryfikacji, czy operacja zakończyła się sukcesem. Odśwież listę baz danych, aby znaleźć nowo utworzoną.

Przykładowo, jeśli Twoja nowa baza danych nazywa się „muzyka”, powinna pojawić się na liście w pgAdmin4, w sekcji „Postgres16 > Bazy danych”.

Usuwanie bazy danych PostgreSQL

Jeśli baza danych nie jest już potrzebna, możesz ją usunąć (ang. „drop”) za pomocą polecenia SQL DROP DATABASE:

 try:
    cur.execute('''DROP DATABASE MUSIC''')
except psycopg2.Error as e:
    print(e)

Zwróć uwagę na zamianę polecenia CREATE na DROP. Po wykonaniu operacji usunięcia, baza danych nie będzie już widoczna na liście.