Мы с вами приступаем к работе с базой данных в Symfony и в этом вводном видео мы рассмотрим некоторые вводные понятия, которые нужно понимать и знать прежде чем приступать к работе с базой данных в фреймворке Symfony.
Давайте для начала познакомимся с таким важным понятием как сущности.
Первое, что нужно понимать, Symfony не умеет работать с базой данных напрямую. Как же это возможно? В таком продвинутом PHP фреймворке нет возможности работы с базой данных напрямую.
В Symfony нет каких-то функций, которые обрабатывали бы SQL-запросы и.т.д.
Какое же решение для этого есть?
Для того, чтобы Symfony умел работать с базой данных в Symfony есть внешняя библиотека, которая называется Doctrine. Именно благодаря этой библиотеке Symfony как раз таки и "общается" с базой данных.
Соответственно, т.к. Symfony у нас не умеет напрямую общаться с базой данных, то SQL запросы к базе данных, которые, возможно, вы уже привыкли делать, Symfony выполнять не умеет.
Для того, чтобы выполнить какой-то запрос к базе данных: что-то там создать, запросить, изменить или удалить используется так называемый DQL.
DQL (Doctrine Query Language) - это специальный объектно-ориентированных диалект SQL.
Синтаксис DQL очень похож на синтаксис SQL в плане создания запросов, но есть и некоторые отличия. Главное отличие в том, что DQL основан на объектно-ориентированном подходе. Каждая запись в базе данных соответствует какому-то объекту.
Подробнее о DQL и Doctrine можно посмотреть на официальном сайте:
https://www.doctrine-project.org
Какая идея этого подхода?
Идея Doctrine в том, что таблица в базе данных = PHP классу = Сущности.
Тут и появляется такое понятие как сущность, с которым приходится чаще всего работать в Symfony.
Любая таблица в базе данных, которую мы создаем, она является зеркальным отражением какого-то класса, который мы с вами создаем программируя в PHP. С базой данных мы напрямую не общаемся, мы общаемся с классами, с какими-то объектами, которые мы с вами создали.
Эти объекты (классы) для работы с базой данных - они являются сущностями.
Т.е. создается обычный класс, например, класс "Страница (Page)" (см. видео). У этого класса есть какие-то свойства, методы. Эти свойства, которые мы там создали, они прописываются в базе данных и в ней появляется точно такое же отражение наших классов.
Для того, чтобы внести изменение в какую-то таблицу в базе данных, нам нужно просто изменить соответствующий класс, внутри нашей программы в Symfony.
Вот такой примерно смысл. Это пока вводное видео о базе данных в Symfony, сущностях и.т.д. и далее в следующих видео мы уже с вами будем подробнее в этом разбираться, как происходит это взаимодействие и.т.д.
Чтобы оставить сообщение, зарегистрируйтесь/войдите на сайт через:
Email - зарегистрироваться / войти