SQLAlchemy: Database connection, raw SQL queries with engine #2

  Переглядів 22,984

Артём Шумейко

Артём Шумейко

День тому

Научимся подключаться к Базе данных через engine синхронно и асинхронно, напишем простой SELECT запрос.
Освой backend разработку на Python с НУЛЯ до выхода в продакшн за 3 месяца: clck.ru/35mSun
Прочитать отзывы к курсу можно на Stepik: clck.ru/38ZdhZ
Все вопросы по SQLAlchemy обсуждаем в телеграм сообществе: t.me/python_community_rus
Мой телеграм канал о жизни разработчика: t.me/artemshumeiko
Полезные материалы для бэкендера в моем телеграм боте: t.me/ArtemShumeikoBot?start=eXQ
Репозиторий на Github с кодом из видео: t.me/artemshumeiko/28
Поддержать меня и получить ранний доступ к видео можно здесь: boosty.to/artemshumeiko
0:00 - Обзор проекта
1:59 - Адрес для подключения к БД (синхронный и асинхронный)
3:04 - Создание engine (движка)
7:33 - Выполняем запрос через engine
11:03 - Извлекаем ответ БД из итератора Алхимии
14:33 - Асинхронный движок и запрос

КОМЕНТАРІ: 47
@artemshumeiko
@artemshumeiko 7 місяців тому
Освой backend разработку на FastAPI с НУЛЯ до выхода в продакшн за 3 месяца: clck.ru/35mSun Прочитать отзывы к курсу можно на Stepik: clck.ru/38ZdhZ Пишу про лайфхаки при поиске работы, рынок труда и способы развития разработчиков в TG канале - подписывайся: t.me/artemshumeiko Вступай в Python-сообщество (здесь можно задать любой вопрос): t.me/python_community_rus
@deez_gainz
@deez_gainz 6 місяців тому
Скорость объяснения нравится, достаточно деталей чтобы понять суть и нет цели просто быстро быстро показать как все запустить на коленке (для этого у нас ГПТ уже есть), спасибо!
@user-oc5sd1jw4n
@user-oc5sd1jw4n 7 місяців тому
Спасибо за урок, всё получилось, ждём продолжения!
@7IdE
@7IdE 4 місяці тому
Шикарный байт на подписку - прям вообще топ. Поэтому пришлось сделать не только красную кнопку серой, но и серую кнопку со счетчиком сделал черной, увеличив счетчик. :D Ну а объяснения как всегда топовые.
@user-qp8hg4ds2b
@user-qp8hg4ds2b 2 місяці тому
Замечательный урок, спасибо Артем!
@artemshumeiko
@artemshumeiko 2 місяці тому
Спасибо! Рад, что видео оказалось полезным
@user-ew7xt7dv5k
@user-ew7xt7dv5k 7 місяців тому
Прекрасный курс ожидается!
@user-im7if6ps3z
@user-im7if6ps3z 7 місяців тому
Ой спасибо, добрый человек, как раз вовремя, нужно подучить алхимию))
@w1ntexx281
@w1ntexx281 Місяць тому
спасибо
@user-gd4en4ot3u
@user-gd4en4ot3u 4 місяці тому
блин проблема на проблеме, какой драйвер для Майскл асинхронный?
@PEPPA_CHAN
@PEPPA_CHAN 12 днів тому
Впервые вижу конструкцию (переменная)= (res=) Что это значит?
@silverguard3638
@silverguard3638 7 місяців тому
О мой отзыв о курсе вставил в видео))) В рамках курса планируется ли еще какой то проект по FastAPI? Например что то более масштабное чем то, что идет в курсе? Своего рода финальный аккорд который скомпилирует все то что мы изучили в курсе + какие то дополнительные фишки?
@artemshumeiko
@artemshumeiko 7 місяців тому
Да, через несколько уроков мы добавим FastAPI к нашему приложению и посмотрим, как отдавать ответы Алхимии
@silverguard3638
@silverguard3638 7 місяців тому
@@artemshumeiko Я про тот что на степике) Я его прошел, понравилось. особенно хорошо легло на предыдущий опыт. Будет ли дополнительное развитие проекта в будущем или новый проект в рамках того курса для рассмотрения каких других аспектов FastAPI? Из всего что смотрел твой курс Самый топовый.
@artemshumeiko
@artemshumeiko 7 місяців тому
В курс будут добавляться новые блоки. Они будут развивать и дополнять уже существующий проект бронирования отелей. Новый проект в курсе вряд ли появится. Пока в ближайших планах показать, как развертываются проекты в облаке (типа Yanded Cloud, Selectel)
@user-wh7hm2lx7t
@user-wh7hm2lx7t 7 місяців тому
Спасибо за видео) Не планируется ли в будущем видео про FastAPI + elasticsearch ?))
@montecristo31
@montecristo31 4 місяці тому
За курс пасиба, а вот за тему дизреспект, все глаза себе выжиг =(
@artemshumeiko
@artemshumeiko 4 місяці тому
спасибо, учту
@mixig3809
@mixig3809 4 місяці тому
Доброго всем! Подскажите пожалуйста! Вылезает ошибка подключения к БД (sqlalchemy.exc.OperationalError: (psycopg.OperationalError) connection failed: :1), port 5432 failed: �����: ���� ������ "sa" �� ���������� ) Помогло исправить тем, что сам добавил БД с именем SA. Обязательно всегда нужно самому создавать БД в ручную или же это можно как-то сделать автоматически? Спасибо за ответ!
@artemshumeiko
@artemshumeiko 4 місяці тому
Не, автоматом создание БД не сделать
@mixig3809
@mixig3809 4 місяці тому
@@artemshumeiko грусть печаль! Но почему то, когда на курсе по FastAPI делали первое подключение, то на только что установленном пострескл сработало, и оно само создалось!
@dmitriystalin4386
@dmitriystalin4386 Місяць тому
@@mixig3809 разбирайся с логинами и паролями, по умолчанию идут DB_HOST=localhost DB_PORT=5432 DB_NAME=postgres DB_USER=postgres DB_PASS= (ты задавал при установке postgres)
@hurricane-rus
@hurricane-rus 2 місяці тому
Курс начался интересно, жаль, не все моменты проговорены явно, чтобы повторить за автором. О чем надо догадаться, чтобы все заработало в PyCharm, как на видео: 1) Поднять базу Postgres (реквизиты взять из .env-файла в корне проекта) и подключиться к ней. 2) PyCharm автоматом не видит .env-файлы - в меню Edit Configurations надо прописать путь до этого файла. (VSCode этот файл видит сам, ему помогать не надо)
@montecristo31
@montecristo31 2 місяці тому
если незнаешь как поднять базу то для начала тебе стоит изучить sql, а потом уже переходить к orm.
@dmitry1909
@dmitry1909 7 місяців тому
Поивет. Вопросы можно задавать?
@artemshumeiko
@artemshumeiko 7 місяців тому
конечно! лучше всего в телеграме: t.me/python_community_rus
@user-xu5pp7lk5g
@user-xu5pp7lk5g 2 місяці тому
Подскажите пожалуйста, как этот url построить в create_engine? какой пароль вводить, хост и т.д? эту инфу в pgAdmin искать, если да, то где?
@artemshumeiko
@artemshumeiko 2 місяці тому
если база postgres поднята локально, то хост localhost, порт 5432, пароль, юзер и название базы по умолчанию postgres
@user-lt5un7bz3r
@user-lt5un7bz3r 3 місяці тому
Привет! По фаст апи ты был в пучарме, а тут вскод. Почему?) Попробовал его не так давно, вообще не понравился, остался обратно на пучарме
@artemshumeiko
@artemshumeiko 3 місяці тому
Я фуллстак работал почти всегда, поэтому было удобно весь код смотреть сразу в одном проекте (фронт и бэк в соседних вкладках). Сейчас обратно на пучарм перешел - уж слишком он хорош. Единственное, что в бесплатной версии нет поддержки Jupyter notebook, что сильно бесит
@user-nj7ty4lu9j
@user-nj7ty4lu9j Місяць тому
А как вообще вот где url у engine, что там писать так и не понял
@danilbanan406
@danilbanan406 4 місяці тому
тоесть если pool_size = 5 то всего к нашей бд смогут обращаться только 5 человек?
@artemshumeiko
@artemshumeiko 4 місяці тому
нет, подобная настройка (доступ до 5 человек) задается только на уровне субд pool_size определяет кол-во соединений к базе, которая создаст алхимия и будет переиспользовать при обращении к базе, чтобы не создавать новые соединения на каждый запрос
@user-rq5gg2uk3s
@user-rq5gg2uk3s 2 місяці тому
Лучший русскоязычный курс, после которого уже можно спокойно ориентироваться в документации, еще и алембик. Бесплатно...
@artemshumeiko
@artemshumeiko 2 місяці тому
спасибо большое
@pavelkozlov9420
@pavelkozlov9420 4 місяці тому
Привет! Видео огонь, у тебя талант учить) Может кто-то подсказать, почему у меня для подгрузки .env надо костылить вот такую штуку - os.path.join(os.path.dirname(__file__), '..', '.env'), а на видео просто .env. Структура проекта такая-же, IDE - pycharm (он хорошо делает импорты))
@artemshumeiko
@artemshumeiko 4 місяці тому
запускать проект нужно, находясь в корне проекта (то есть там же, где .env файл) через команду по типу python3 src/main.py иначе придется костылить, как вы
@xolog1144
@xolog1144 2 місяці тому
@@artemshumeiko такая же проблема, как и у комментатора. Запускаю из корня в пайчарм, но он не видит .env файл в родительском каталоге UPD: помогло в итоге пометить корень проекта как source директорию UPD 2: я ещё init файлы добавлял во все подпапки
@user-ql6lk9uq4x
@user-ql6lk9uq4x 2 місяці тому
не рабочий код. начиная с 8:58. не находит конфигурационные файлы .env. бред полный.
@yal2983
@yal2983 7 місяців тому
А зачем записывать видео в VS Code, если он даже подсказать импорты нормально не может?
@user-zm2fm5mr9d
@user-zm2fm5mr9d Місяць тому
если настроить нормально то может
@user-un2wj7si9j
@user-un2wj7si9j Місяць тому
Несколько часов билась с ошибкой (psycopg.OperationalError) [Errno -2] Name or service not known. Потом решила проверить ссылку с помощью функции make_url из sqlalchemy.engine, сделала print полученной ссылки, и оказалось, что проблема в том, что пароль от postgres содержит символ "@". И программа принимала оставшуюся после @ часть пароля за hostname. 😵‍💫
@user-ny9ux9ss8n
@user-ny9ux9ss8n 4 місяці тому
Что ты искал в БД ? 😊
@artemshumeiko
@artemshumeiko 4 місяці тому
не понял вопроса
SQLAlchemy: Создание таблиц и вставка данных через Core #3
11:08
Микросервисы - Простым Языком на Понятном Примере
19:08
Пескоструйный АППАРАТ! #shorts
01:00
Гараж 54
Переглядів 2 млн
Разбираем основы Kafka и RabbitMQ
26:54
Digital train | Alex Babin
Переглядів 4,8 тис.
FastAPI ТОП Библиотек и Расширений [2024]
12:21
Артём Шумейко
Переглядів 12 тис.
SQLAlchemy Tutorial For Beginners - Python Simple Social Network Backend
1:17:52
Уроки Blender с нуля / #3 - Трансформация и добавление объектов
24:11
Школа itProger / Программирование
Переглядів 43 тис.