Як підключитися та використовувати PostgreSQL у Python

Ключові висновки

  • Завантажте та встановіть PostgreSQL для вашої ОС, а потім скористайтеся psycopg2 для підключення до бази даних PostgreSQL з Python.
  • Використовуйте pgAdmin4, щоб отримати облікові дані сервера для підключення до сервера Postgres із Python.
  • Використовуйте команди SQL у Python, щоб створити, перевірити або видалити базу даних PostgreSQL.

Якщо ви пишете програму на Python, якій потрібен доступ до даних із бази даних Postgres, вам потрібно буде знати, як їх з’єднати. Після того, як ви встановили з’єднання, ви можете використовувати його для виконання запитів і отримання чи збереження даних.

Завантажте та встановіть PostgreSQL

PostgreSQL — чудовий вибір для ваших програмних проектів. Ви можете завантажити та встановити необхідну версію PostgreSQL відповідно до вашої ОС. Postgres доступний для завантаження в стандартних операційних системах, таких як Windows, macOS і Ubuntu Linux.

Процес інсталяції залежить від ОС, тому вам слід виконати кроки інсталяції, щоб забезпечити плавне налаштування.

Встановіть необхідну бібліотеку

Ви можете використовувати бібліотеку psycopg2 для підключення до бази даних PostgreSQL з Python. Виконайте цю команду в інтерпретаторі Python, щоб перевірити, чи встановлено бібліотеку:

 import psycopg2 

Якщо ви отримуєте повідомлення про помилку (наприклад, «Немає модуля з назвою ‘psycopg2’»), інсталюйте бібліотеку за допомогою цієї команди:

 pip install psycopg2 

PIP — це менеджер пакетів Python, який можна встановити на Windows, Mac або Linux. Це полегшує інсталяцію пакетів Python.

Отримати облікові дані за допомогою pgAdmin4

Ви можете використовувати програму pgAdmin4 для керування базами даних Postgres у середовищі GUI. Можливо, ви встановили його одночасно з установкою Postgres, але ви можете завантажити pgAdmin4 і за потреби встановіть його окремо.

Ось як ви можете використовувати pgAdmin4 для отримання облікових даних вашого сервера:

  • У меню програми відкрийте pgAdmin4.
  • Натисніть меню «Сервери» ліворуч на екрані програми.
  • Введіть пароль Postgres, який ви ввели під час налаштування.
  • Після підключення до сервера клацніть правою кнопкою миші на пункті PostgreSQL 16, а потім виберіть «Властивості».
  • У діалоговому вікні «Властивості» натисніть «Підключення».
  • Занотуйте ім’я хоста, номер порту та ім’я користувача.
  • Підключіться до сервера Postgres

    Маючи облікові дані під рукою, ви можете використовувати бібліотеку psycopg2 для встановлення з’єднання з сервером Postgres. Для цього вам потрібно скористатися функцією підключення наступним чином:

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

    Далі ви повинні використовувати функцію курсору для виконання команд Postgres у середовищі Python:

     cur = conn.cursor() 

    Нарешті, ви можете встановити позначку автоматичної фіксації, щоб гарантувати, що Python виконує та фіксує кожен оператор коду. Таким чином, вам не потрібно передавати окремі оператори фіксації після кожного рядка коду.

     conn.set_session(autocommit = True) 

    Ви можете виконати ці оператори за один раз, щоб підключитися до локального екземпляра вашого сервера Postgres.

    Як створити базу даних Postgres

    База даних Postgres відіграє ключову роль у зберіганні колекції пов’язаних таблиць. Створіть новий за допомогою команди CREATE DATABASE SQL, яку можна передати в метод виконання об’єкта курсору:

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

    Ви завжди повинні подбати про будь-які винятки, які можуть виникнути. Цей приклад просто друкує будь-яку помилку, яка виникає, але у робочому коді ви захочете вжити відповідних заходів.

    Перевірка бази даних у pgAdmin4

    Коли ви виконуєте наведений вище запит, ви можете перевірити, чи успішно створено базу даних за допомогою pgAdmin4. Перейдіть до інтерфейсу, оновіть існуючий список баз даних і знайдіть нову базу даних.

    Наприклад, якщо ви створюєте зразок бази даних під назвою «музика» за допомогою наведеного вище запиту, вона має відображатися у списку баз даних під категорією Postgres16 > Бази даних.

    Як видалити базу даних Postgres

    Якщо ви не хочете зберігати певну базу даних, ви можете скористатися такою командою, щоб видалити (або «скинути») її:

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

    Замість команди create потрібно використовувати команду drop. Після виконання ви не побачите відповідну базу даних.