Академия sql: online SQL course and trainer with exercises

Что такое SQL, зачем он нужен и как работает

Как работает язык SQL

SQL — язык запросов, с помощью которого можно получать информацию из базы данных. Пример использования SQL — отображение личного профиля в соцсети «ВКонтакте»:

SQL используют разработчики, аналитики, тестировщики, продуктовые маркетологи. Например, для обработки запросов внутри сайтов и приложений или для сбора большого массива данных, чтобы протестировать гипотезы. С помощью SQL компания может быстро узнать, какие клиенты чаще пользовались её услугами в прошлом году, или сравнить зарплаты сотрудников в разных отделах.

Что такое база данных в SQL

База данных — это большие таблицы с данными, примерно как в Excel. С той разницей, что Excel может хранить до нескольких сотен мегабайт, а база данных — сотни гигабайт или терабайты.

Язык SQL предназначен для работы с реляционными базами данных — множеством таблиц, которые связаны между собой.

Пример реляционной базы данных интернет-магазина

Таблица в базе данных SQL состоит из следующих элементов:

1. Ключи — то, что идентифицирует сущность в таблице. Сущность — это информация в базе данных, а ключом может быть, например, порядковый номер строки. Ключи делятся на три типа: первичные, внешние и потенциальные.

У каждой сущности в таблице свой первичный ключ. Например, ИНН человека — идеальный пример первичного ключа. Не может быть двух разных людей с одинаковым ИНН. Внешний ключ связывает разные таблицы и сущности в таблицах. К примеру, таблицу с фильмами и таблицу с актёрами, которые в этих фильмах снимались.

Потенциальный ключ — альтернативное значение, которое наряду с первичным ключом может идентифицировать сущность в таблице. Допустим, человека можно идентифицировать по ИНН, а можно — по ФИО и дате рождения.

Владимир Самойлов, тимлид в продуктовой разработке

2. Атрибут — столбец с одним параметром. Например, «Название», «Дата» или «Стоимость».

3. Домен — тип значения атрибута. Например, в столбце «Цена» стоимость должна быть указана числом с десятичной частью.

4. Кортеж — пронумерованная строка в таблице.

5. Значение — содержимое одной ячейки.

6. Индекс — объект базы данных, который упрощает поиск по ней. В таблице содержится множество строк в произвольном порядке, поиск нужной информации может занимать много времени. Индекс ускоряет процесс.

Представим, что у нас есть телефонный справочник. У него индексы — буквы. По букве можно легко найти фамилию человека. Если индекса нет, придётся долго искать нужный контакт, перебирая все строки в таблице.

Ещё есть уникальные индексы. Мы просим реляционную базу данных поддерживать какие-то ограничения: например, что не может быть паспортов с одинаковым номером. Тогда база при попытке записать в неё что-то нарушающее просто вернёт ошибку.

Владимир Самойлов, тимлид в продуктовой разработке

Для чего нужны операторы SQL

Операторы SQL — это слова и символы для выполнения разных операций с базой данных. Они делятся по типам задач, которые решают. Например, есть операторы чтения и операторы записи:

  1. Операторы чтения помогают запросить информацию из базы данных. К таким относится SELECT.
  2. Операторы записи добавляют новую информацию или обновляют старую в базе данных. К ним относятся INSERT, UPDATE.

Допустим, нужно выбрать всех белых котов из таблицы с домашними животными. Тогда запрос в базу данных будет таким:

Теперь нужно добавить в таблицу с животными новую породу собак — корги. Запрос будет таким:

Что такое СУБД и чем они различаются

СУБД, система управления базами данных, — программа, с помощью которой можно работать с базой: создавать таблицы, изменять их, получать из них информацию.

Это отдельная программа, которая где-то запущена, обычно на сервере. Однако вы можете запустить её и на своём компьютере, чтобы попрактиковаться с ней. То есть СУБД — фактически как оператор кол-центра, который работает 24/7. Ему можно позвонить и сказать: «Назови мне все адреса филиалов компании в Санкт-Петербурге». Только вы обращаетесь к СУБД с помощью SQL-запросов.

Владимир Самойлов, тимлид в продуктовой разработке

Выделяют несколько видов СУБД:

  • Универсальные. Хорошо работают с быстрыми командами: внести изменения, добавить информацию, сделать выборку. Однако после достижения определённого объёма данных могут перегружаться и подвисать. Примеры универсальных СУБД: MySQL, MSSQL, PostgreSQL, Oracle.

Из этих систем хорошо масштабируется Oracle. Если у других СУБД проблемы с производительностью могут начаться на терабайте, у Oracle они начнутся на сотне терабайт.

Владимир Самойлов, тимлид в продуктовой разработке

  • Колоночные. Такой тип СУБД особенно подходит для аналитики. Если обычные базы хранят данные построчно, то колоночные — по колонкам. Даже если нет индекса, такая СУБД сможет быстро собрать нужную информацию.

Известная колоночная СУБД — ClickHouse. Это продукт Яндекса, который вырос из базы данных для Яндекс Метрики. Она отлично подходит для аналитики. Однако не очень удобна для скоростного решения задач, а это, например, требуется в банкинге для проведения транзакций. В таких случаях лучше использовать универсальные базы данных.

Владимир Самойлов, тимлид в продуктовой разработке

С чего начать изучение SQL

Ознакомиться с теорией. Например, с вводным учебным пособием по SQL, где есть объяснения базовых понятий, основы работы с базами данных, операторами. Кроме туториала читайте профильные книги: «SQL. Полное руководство», «Введение в системы баз данных», «Программирование баз данных SQL. Типичные ошибки и их устранение».

Отработать на практике. На портале HackerRank есть много готовых задач по SQL. Задачи варьируются от простых до очень сложных. Особенно удобно, что есть решения: можно сверить ответы.

Общаться с сообществом. В Telegram есть сообщество начинающих дата-инженеров. Там обсуждают любые вопросы по SQL — от решения задач до полезных ресурсов для изучения.

SQL Server — Академия специальных курсов по информационным технологиям

Курсы / От

askit.ru


Учебный курс «Хранилища данных и SQL Server Integration Services» Краткое содержание: OLTP и Data Warehouse, Data Mart и Data Lake, таблицы фактов (fact tables), таблицы измерений (dimensions), схемы звезды и снежинки, системы ETL (Extraction, Transformation, Load), SSIS как система ETL, Data Flow Task, менеджеры подключений (Connection Managers), источники, назначения и преобразования, задачи Control Flow, запуск …

Microsoft SQL Server: Хранилища данных и SQL Server Integration Services Читать далее »

Курсы / От

askit.ru


Учебный курс «SQL Server Reporting Services» Краткое содержание: источники данных и наборы данных SQL Server Reporting Services, секции отчета, элементы Table, Matrix и List, сортировка и группировка, итоги по группам, фильтрация и параметры, выражения в SSRS, применение подотчетов, работа с диаграммами, REST API в SSRS, публикация отчетов на сервер, оптимизация производительности отчетов SSRS Общие данные: …

Учебный курс SQL Server Reporting Services Читать далее »

Курсы / От

askit. ru


Учебный курс «Microsoft SQL Server: OLAP и Data Mining» Краткое содержание: SQL Server Analysis Services и SQL Server Data Tools, источники данных, схемы звезды (star) и снежники (snowflake), таблицы фактов, измерения (dimensions), кубы и меры (measures), режимы MOLAP/ROLAP/HOLAP, агрегаты в кубах, вычисляемые элементы в OLAP, KPI и actions, запись в куб и настройка writeback, язык …

Microsoft SQL Server: OLAP и Data Mining Читать далее »

Курсы / От

askit.ru


Учебный курс «Microsoft SQL Server: запросы» Краткое содержание: синтаксис запросов SELECT в SQL Server, сортировка и ORDER BY, фильтрация и WHERE, TOP, OFFSET, JOIN, GROUP BY, HAVING, подзапросы, UNION/EXCEPT/INTERSECT, CTE, RANK(), работа с транзакциями, оптимизация запросов Общие данные: Осваивать, как извлекается информация из баз данных SQL Server, методом «тыка» — не очень эффективно. Обязательно что-нибудь …

Microsoft SQL Server: запросы Читать далее »

Курсы / От

askit. ru


Учебный курс «Microsoft SQL Server – мониторинг и оптимизация производительности» Краткое содержание: основные концепции мониторинга производительности, нагрузочное тестирование SQL Server, оптимизация подключений, параметры производительности сервера, настройка TEMPDB, оптимизация индексов, дефрагментация, оптимизация запросов, настройка системы FILESTREAM Общие данные: Редко бывает так, чтобы на предприятии все были полностью довольны производительностью работы баз данных SQL Server. А если …

Microsoft SQL Server – мониторинг и оптимизация производительности Читать далее »

Курсы / От

askit.ru


Учебный курс «Microsoft SQL Server для разработчиков» Краткое содержание: проектирование баз данных SQL Server, типы данных, нормализация таблиц, связи таблиц, кластерные и некластерные индексы, Transact-SQL, хранимые процедуры, пользовательские функции, триггеры, создание хранимых процедур на C#, оптимизация работы приложений SQL Server Общие данные: Microsoft SQL Server — система с очень богатым функционалом и этим функционалом нужно …

Microsoft SQL Server для разработчиков Читать далее »

Курсы / От

askit. ru


Учебный курс «SQL Server для администраторов» Краткое содержание: развертывание SQL Server, настройка баз данных, резервное копирование и восстановление, предоставление разрешений, настройка безопасности, импорт и экспорт данных, оптимизация производительности Общие данные: Все тонкости администрирования Microsoft SQL Server «методом тыка» освоить тяжело. В то же время Microsoft постепенно теряет интерес как к развитию on-premise (развертываемых на предприятии) …

Microsoft SQL Server для администраторов Читать далее »


Оставьте комментарий

/ Без рубрики / От

askit.ru


Добро пожаловать в WordPress. Это ваша первая запись. Отредактируйте или удалите ее, затем начинайте создавать!


Возможности

— SQLAlchemy

Обзор того, что такое SQLAlchemy.

  • Заявление о философии
    — Философия SQLAlchemy
  • Функции
    — обзор основных функций
  • Кавычки
    — пользовательские цитаты

Краткий обзор некоторых ключевых функций:

ORM не требуется

SQLAlchemy состоит из двух отдельных компонентов, известных как
Core и ORM . Ядро само по себе
полнофункциональный набор инструментов для абстрагирования SQL, обеспечивающий бесперебойную
уровень абстракции для широкого спектра реализаций DBAPI
и поведение, а также язык выражений SQL, который позволяет
выражение языка SQL через генеративные выражения Python.
Система представления схемы, которая может одновременно генерировать DDL
утверждения, а также анализировать существующие схемы и тип
система, которая позволяет любое сопоставление типов Python с типами базы данных,
завершает систему.
Object Relational Mapper является необязательным пакетом, который
основывается на Ядре. Многие приложения построены строго
на ядре, используя систему выражений SQL для предоставления кратких
и точный контроль над взаимодействием с базой данных.

Зрелая, высокопроизводительная архитектура

Более семи лет постоянной разработки, профилирования и рефакторинга
привели к созданию высокопроизводительного и точного инструментария, хорошо охватывающего
в тестах и ​​развернутых в тысячах сред. С практически
каждый основной компонент во второй или третьей полной итерации, SQLAlchemy
0.6 примерно в два раза быстрее старых версий 0.4 всего за несколько
лет назад, а версии 0.7 и 0.8 продолжают улучшаться.
Его необработанная скорость выполнения конкурентоспособна с сопоставимыми
инструменты и расширенные функции ORM, такие как единица работы, память
коллекции, активная загрузка коллекций через соединения или вторичные
подвыборки и другие оптимизации позволяют ORM SQLAlchemy выдавать
меньше и более эффективные запросы, чем в любой предыдущей версии.

Одобрен администратором баз данных

Создан в соответствии с требованиями администраторов баз данных, включая возможность
заменить сгенерированный SQL на оптимизированные вручную операторы, полное использование
параметров привязки для всех литеральных значений, полностью транзакционно
и пакетная запись базы данных с использованием шаблона Unit of Work. Все
объектно-реляционные шаблоны разрабатываются на основе использования правильных
ссылочная целостность, а внешние ключи являются неотъемлемой частью
его использование.

Без мнения

SQLAlchemy придает большое значение тому, чтобы не мешать
База данных и архитектура приложений. В отличие от многих инструментов,
никогда «генерировать» схемы (не путать с выдачей
определяемый пользователем DDL,
в которых он преуспевает) или опирается на какие-либо соглашения об именах.
SQLAlchemy поддерживает самые разнообразные базы данных и
архитектурные проекты, насколько это возможно.

Единица Работы

Система Unit Of Work, центральная часть объекта SQLAlchemy.
Relational Mapper (ORM), организует ожидающие вставки/обновления/удаления
операций в очереди и сбрасывает их все одним пакетом. Чтобы выполнить
это он выполняет топологическую «сортировку зависимостей» всех измененных элементов в
очередь, чтобы соблюдать межстрочные зависимости, и группирует избыточные
операторы вместе, где они иногда могут быть объединены в пакеты еще больше.
Это обеспечивает максимальную эффективность и безопасность транзакций, а также
сводит к минимуму вероятность взаимоблокировок. По образцу модели Фаулера «Единица работы», а также
Спящий режим,
Ведущий объектно-реляционный преобразователь Java.

Построение функционального запроса

Создание запросов на основе функций позволяет создавать предложения SQL с помощью
Функции и выражения Python. Полный спектр возможностей
включает логические выражения, операторы, функции, псевдонимы таблиц,
выбираемые подзапросы, операторы вставки/обновления/удаления, коррелированные
обновления, выборки и EXISTS предложений, UNION
предложения, внутренние и внешние соединения, параметры привязки и свободное смешивание
буквальный текст внутри выражений. Сконструированные выражения компилируются
зависит от любого количества реализаций базы данных поставщиков (например,
PostgreSQL или Oracle), что определяется комбинацией «диалекта» и
«компилятор», предоставляемый реализацией.

Модульный и расширяемый

Различные части SQLAlchemy могут использоваться независимо от
отдых. Такие элементы, как пул соединений, компиляция операторов SQL
и транзакционные сервисы могут использоваться независимо от каждого
другие, а также могут быть расширены с помощью различных точек плагина.
Интегрированная система событий позволяет вводить пользовательский код в
более пятидесяти точек взаимодействия, в том числе внутри ядра
выполнение оператора, генерация схемы и самоанализ,
работа с пулом соединений, объектно-реляционная конфигурация,
операции сохранения, события мутации атрибутов и
транзакционные этапы. Новые элементы выражений SQL и пользовательские
типы баз данных могут быть легко созданы и интегрированы.

Раздельное отображение и дизайн классов

ORM стандартизирует «декларативную» конфигурационную систему, которая
позволяет создавать пользовательские классы, встроенные в таблицу
метаданные, на которые они сопоставляются, точно так же, как и большинство других объектно-реляционных
инструменты обеспечивают. Однако эта система совершенно необязательна —
по своей сути ORM рассматривает определяемый пользователем класс,
связанные метаданные таблицы, и их сопоставление должно быть полностью
отдельный. С помощью функция сопоставления() ,
любой произвольный класс Python может быть сопоставлен с таблицей или представлением базы данных.
Сопоставленные классы также сохраняют сериализуемость (маринование) для использования.
в различных системах кэширования.

Быстрая загрузка и кэширование связанных объектов и коллекций

ORM кэширует коллекции и ссылки между объектами один раз
загружается, так что при каждом доступе не нужно выдавать SQL.
Функция нетерпеливой загрузки позволяет целые графики
объектов, связанных коллекциями и ссылками для загрузки
с несколькими или только одним запросом, настраиваемый
вплоть до точного количества операторов для каждого сопоставления или
для каждого запроса без изменения существующих запросов
нужный. Проблема «N+1»,
при этом ORM должен выдавать отдельные операторы для
все объекты в коллекции, является вещью
прошлое с SQLAlchemy.

Составные (многостолбцовые) первичные ключи

В SQLAlchemy первичные и внешние ключи представлены в виде наборов
колонны; действительно составное поведение реализовано с нуля. ОРМ
имеет промышленную поддержку значимых (не суррогатных) первичных ключей,
включая изменчивость и совместимость с ON UPDATE CASCADE, а также
явная поддержка других распространенных составных шаблонов PK, таких как
объекты «ассоциации» (отношения «многие ко многим» с дополнительным значением
прилагается к каждой ассоциации).

Самореферентные сопоставления объектов

Самореферентные отображения поддерживаются ORM. Список смежности
структуры могут быть созданы, сохранены и удалены с правильным каскадированием, без
накладные расходы кода, выходящие за рамки несамореферентных структур. Загрузка
самореферентные структуры любой глубины могут быть настроены для загрузки коллекций
рекурсивно с помощью одного оператора с серией соединений (т.е.
joinload) или с помощью нескольких операторов, каждый из которых загружает полный набор
записи на определенном уровне глубины (т. е. подзапрос). Настойчивость с
таблицы, которые имеют взаимозависимые пары внешних ключей (например, «много x»/«один
конкретный x») также изначально поддерживаются с помощью «post update»
особенность.

Отображение наследования
Явная поддержка доступна для одной таблицы, конкретной таблицы,
и объединенное наследование таблиц. Полиморфная нагрузка (т.
запрос, который возвращает объекты нескольких типов потомков)
поддерживается для всех трех стилей. Загрузка каждого может быть
оптимизирован таким образом, что для полной загрузки
полиморфный результирующий набор.
Сопоставление необработанных операторов SQL

Средства объектно-реляционных запросов SQLA могут поддерживать необработанный SQL
операторы, а также простые наборы результатов и экземпляры объектов могут быть
генерируется из этих результатов так же, как и любая другая операция ORM.
Любой сверхоптимизированный запрос, который вы или ваш администратор базы данных можете придумать, вы можете запустить в
SQLAlchemy, и пока он возвращает ожидаемые столбцы в наборе строк,
вы можете получить свои объекты от него. Операторы, представляющие несколько видов
объектов также можно использовать с результатами, полученными в виде именованных кортежей, или
с зависимыми объектами, направляемыми в коллекции родительских объектов.

Предварительная и постобработка данных

Система типов допускает предварительную и последующую обработку данных как на
параметр связывания и уровень набора результатов. Пользовательские типы могут быть свободно
в сочетании со встроенными типами. Общие типы, а также типы, специфичные для SQL,
доступный.

Поддерживаемые платформы

SQLAlchemy поддерживает Python 2.5 до последних версий 3.x.
Другие поддерживаемые платформы включают Jython и Pypy.

Поддерживаемые базы данных

SQLAlchemy включает диалекты для SQLite, Postgresql, MySQL, Oracle,
MS-SQL, Firebird, Sybase и другие, большинство из которых поддерживает несколько
DBAPI. Другие диалекты публикуются как внешние проекты. Соответствующий DB-API 2.0
реализация (или иногда одна из нескольких доступных) требуется для
использовать каждую конкретную базу данных. Просмотр текущего DBAPI
Поддержка

Библиотека — SQLAlchemy

Существует широкий спектр документации, как официальной, так и неофициальной.
для SQLAlchemy. Ниже приводится руководство по лучшей информации
доступный.

  • Справочная документация
    — Собственная документация SQLAlchemy, включая учебные пособия.
  • Беседы и уроки
    — видео с PyCon и других источников
  • Архитектура
    — глубокие архитектурные погружения
  • Цитирование SQLAlchemy

Справочная документация

Справочная документация по SQLAlchemy, безусловно, самое важное место.
как для нового пользователя, так и для опытного алхимика. Справочная документация
представляет собой продолжающееся усилие, которое конкурирует с усилиями
сам проект SQLAlchemy и постоянно развивается, чтобы быть еще более
полный и судоходный. Новейшие версии документации будут
быть самым актуальным и точным; особенности и поведение, которые были
всегда следует учитывать только представленные в более поздних версиях.

  • Справочная документация

Доклады и учебные пособия

Было представлено множество докладов и учебных пособий как от создателей SQLAlchemy, так и от пользователей.
на многих конференциях по всему миру. Вот подборка:

    SQLAlchemy 2.0 — One-Point-Four-Ening 2021 — Python Web Conf 2021

    Автор: Майк Байер

    Это новейшая версия учебника «Начало работы», в котором представлены
    SQLAlchemy с точки зрения новой серии 2.0.

    • Видео
    • Студент Скачать

    SQLAlchemy 2. 0 — записано 10 ноября 2021 г.

    Автор: Майкл Кеннеди и Майк Байер

    Второе интервью с Майком Байером в серии Talk Python to me Podcast ;
    в этом эпизоде ​​представлены некоторые основные моменты SQLAlchemy 2.0.

    • Видео
    • Домашняя страница подкаста

    Введение в SQLAlchemy — представлено на многих Pycon и других конференциях

    Автор: Майк Байер

    Этот учебник является более «классическим» учебником, который представляет собой быстрый темп
    но руководство для начинающих о том, что такое SQLAlchemy. В то время
    учебник развивался на протяжении многих лет и на данный момент довольно исправлен;
    см. более новый учебник «2.0» для последней версии, которая была изменена
    немного более существенно.

    • Слайды
    • Видео на PyCon 2013
    • Видео на PyGotham 2014
    • Необходимый материал

    SQLAlchemy и доступ к данным в Python — записано 9 апреля 2015 г.

    Автор: Майкл Кеннеди и Майк Байер

    Интервью с Майком Байером в серии Talk Python to me Podcast .
    Обсуждается история проекта и то, как он развивался с течением времени.

    • Домашняя страница подкаста

    Создание приложения — представлено на Pycon North America, 2014 г.

    Автор: Майк Байер

    В этом докладе мы проиллюстрируем простое веб-приложение, использующее SQLAlchemy, демонстрируя стиль разработки, к которому наиболее ориентирован SQLAlchemy, так называемый «основной» стиль, который обеспечивает разработку и поддержку пользовательских соглашений, которые затем удовлетворяют потребности объявления моделей и реализации вариантов использования.

    • Видео
    • Слайды
    • Образец заявки пирамиды
    • Java-клиент

    Сессия SQLAlchemy — Подробно — представлена ​​на Pycon Canada, 2012 г.

    Автор: Майк Байер

    Подробное пошаговое руководство сеанса SQLAlchemy, описывающее
    обоснование его существования, его движущая философия и
    наконец, пошаговое руководство по жизненному циклу сеанса с использованием
    анимированная схема. Мы рассмотрим, как реляционная база данных
    относится к строкам базы данных в транзакции, и как
    Сессия с годами превратилась в тесную, проксированную
    интеграция с этим жизненным циклом.

    • Слайды
    • Видео
    • HTML-демонстрация

    приложений с ручным кодированием с помощью SQLAlchemy — представлено на Pycon US, 2012 г.

    Автор: Майк Байер

    В этом докладе описывается, почему SQLAlchemy всегда называли «набором инструментов», и подробно описывается подход к созданию программного обеспечения, для которого и был разработан SQLAlchemy. Речь идет об этом
    как подход «Ручное кодирование» с упором на шаблоны и соглашения, созданные пользователями,
    наряду с явным раскрытием реляционных структур. Этот разговор
    описывает, как SQLAlchemy соблюдает то, что было описано как принцип комплементарности автоматизации (не путать с более распространенным физическим термином), позволяя представить работу библиотеки как
    серия прозрачных инструментов автоматизации, а не непрозрачная стена, скрывающая
    детали.

    • Слайды
    • Видео

    Введение в SQLAlchemy Core — представлено на Pycon North America, 2014 г.

    Автор: Джейсон Мейерс

    В этом докладе представлено широкое введение в библиотеку SQLAlchemy Core. Он ориентирован на новичков в SQLAlchemy Core, имеющих опыт работы с другими технологиями баз данных, такими как Django или SQLAlchemy ORM. Мы рассмотрим различия между предметно-ориентированными моделями этих инструментов и моделью, ориентированной на схему, и рассмотрим, как мы можем использовать ее для работы с распространенными и необычными источниками данных.

    • Видео

    Sane Schema Migrations with Alembic и SQLAlchemy — представлено на Pycon North America, 2014 г.

    Автор: Селена Декельманн

    Работа с разработчиками над миграцией схем — постоянная проблема для администраторов баз данных и разработчиков. Разработчикам нравится инструмент «установил и забыл». В этом докладе обсуждаются стратегии, используемые для перехода от чистого SQL и системы миграции оболочки к использованию SQLAlchemy и Alembic для максимального удовлетворения администраторов баз данных и разработчиков.

    • Слайды
    • Видео

    Flexing Relational Power SQLAlchemy — представлен на Pycon US, 2012 г.

    Автор: Брэндон Родс

    Слишком часто программисты используют ORM, чтобы спрятаться от своей базы данных и избежать изучения того, как она работает. Вместо этого я призываю программистов немного изучить SQL и ознакомиться с проблемами, которые должны хорошо решать запросы к базе данных. В этом докладе я расскажу об основах использования SQLAlchemy для создания эффективных запросов и избегания нескольких распространенных антишаблонов запросов к базе данных.

    • Слайды
    • Видео

    SQLAlchemy — архитектурная ретроспектива — представлена ​​на PyGotham 2011

    Автор: Майк Байер

    В этом докладе рассматриваются некоторые основные моменты внутреннего использования SQLAlchemy.
    дизайн и методология, основанные на (теперь опубликованной) главе для
    Книга «Архитектура приложений с открытым исходным кодом». У нас будет
    немного философии SQLAlchemy, обзор ядра и
    затем 500-футовый обзор того, как работает ORM, с множеством
    классно выглядящих диаграмм.

    • Слайды
    • Видео

    Python SQLAlchemy Tutorial — на веб-сайте Python Central

    Автор: Сяонуо Гантан

    Серия руководств по SQLAlchemy для начинающих, охватывающих широкий спектр
    базовых тем. Хотя большая часть информации здесь получена из
    основная документация, темп медленнее и там тоже подробности
    взяты из других источников, включая советы по производительности, сравнение с другими
    ORM и философия дизайна. Очень хорошая работа автора Xiaonuo Gantan.

    • Индекс
    • Вводный курс
    • Как установить SQLAlchemy
    • Сравнение с другими ORM
    • Обзор языка выражений и запросов ORM
    • Часто задаваемые вопросы
    • Примеры ORM
    • Таблицы ассоциаций

    Учебник SQLAlchemy — на веб-сайте учебника Zetcode

    Автор: Ян Боднар

    Это краткое руководство, которое быстро знакомит с основными
    области SQLAlchemy с использованием простых примеров, охватывающих необработанный SQL, концепции схемы,
    Язык выражений SQL и ORM, включая запросы и отношения.

    • Учебник по SQLAlchemy

    SQLAlchemy + URL Dispatch Wiki Tutorial — часть документации Pylons

    Автор: Крис Макдонаф

    Это официальное руководство по интеграции SQLAlchemy в
    Веб-фреймворк пирамиды. Базовый
    заложены шаги по интеграции SQLAlchemy в традиционное веб-приложение
    здесь и в основном соответствуют указанным рекомендациям
    документацией SQLAlchemy.

    • SQLAlchemy + URL Dispatch Wiki Tutorial

Архитектурная документация

Глава о SQLAlchemy была написана для книги The Architecture of Open Source Applications 9.0014 в 2011 году. Эта глава включает в себя подробное введение в ключевые понятия
за компонентами Core и ORM SQLAlchemy:

  • SQLAlchemy в архитектуре приложений с открытым исходным кодом

Ссылка на SQLAlchemy

Пожалуйста, укажите SQLAlchemy, если вы используете его в своих исследованиях.