Как подключить sql к python
Ответы
Maksim Litvinov
20 ноября 2024
В зависимости от используемой СУБД есть различные библиотеки и подходы.
Для подключения к различным СУБД могут потребоваться разные библиотеки. Вот некоторые из самых популярных:
- SQLite (встроенная в Python): не требует установки дополнительных пакетов.
- MySQL: используйте библиотеку mysql-connector-python
- PostgreSQL: используйте библиотеку psycopg2
Для примера возьмем процесс работы с PostgreSQL при помощи библиотеки psycopg2
import psycopg2
# Создаем соединение с базой
# hexlet_test - Имя базы данных
try:
conn = psycopg2.connect('postgresql://user:password@host:port/hexlet_test')
except:
print('Can`t establish connection to database')
sql = "CREATE TABLE users (id BIGINT SERIAL, username VARCHAR(255), phone VARCHAR(255))"
# Запрос выполняется через создание объекта курсора
cursor = conn.cursor()
cursor.execute(sql)
cursor.close() # в конце закрывается
sql2 = "INSERT INTO users (username, phone) VALUES ('tommy', '123456789');"
cursor = conn.cursor()
cursor.execute(sql2)
cursor.close()
sql3 = "SELECT * FROM users;"
cursor = conn.cursor()
# Указатель на набор данных в памяти СУБД
cursor.execute(sql3)
for row in cursor:
print(row)
cursor.close()
conn.commit() # Коммитим, т.е. сохраняем изменения в БД
conn.close() # Соединение нужно закрыть
При работе с базами данных важно обрабатывать возможные ошибки. Вы можете использовать конструкцию try...except
, чтобы управлять исключениями:
Если вы не хотите писать сырые SQL-запросы, вы можете рассмотреть использование ORM, например Django ORM. Они позволяют работать с базой данных через объекты Python и избегать ручного написания SQL-кода
0
0