Sobes.tech
Back to questions
Junior — Middle
103

Можете ли вы назвать основные типы связей, используемые в ORM?

Answer from AI

sobes.tech AI

В ORM (Object-Relational Mapping) основные типы связей между сущностями обычно следующие:

  • Один к одному (One-to-One): Каждая запись в одной таблице связана ровно с одной записью в другой таблице.
  • Один ко многим (One-to-Many): Одна запись в таблице связана с несколькими записями в другой таблице.
  • Многие ко многим (Many-to-Many): Записи в одной таблице могут быть связаны с несколькими записями в другой таблице и наоборот. Обычно реализуется через промежуточную таблицу.

Пример на PHP с использованием Doctrine ORM:

/**
 * @Entity
 */
class User {
    /**
     * @OneToMany(targetEntity="Post", mappedBy="author")
     */
    private $posts;
}

/**
 * @Entity
 */
class Post {
    /**
     * @ManyToOne(targetEntity="User", inversedBy="posts")
     */
    private $author;
}

Здесь показана связь один ко многим между пользователем и постами.