РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
246 of 258 menu

Метод insert класса Connection

Метод insert класса Connection выполняет SQL-запрос на вставку новой строки в указанную таблицу базы данных. Первым параметром передаётся имя таблицы, вторым - ассоциативный массив с данными для вставки. Ключи массива соответствуют именам столбцов, а значения - вставляемым данным. Метод возвращает количество затронутых строк.

Синтаксис

public function insert(string $table, array $data, array $types = []): int

Пример

Давайте вставим новую статью в таблицу article:

<?php namespace App\Repository; use Doctrine\DBAL\Connection; class ArticleRepository { public function __construct( private Connection $connection ) { } public function createArticle(): int { $res = $this->connection->insert('article', [ 'title' => 'abcde', 'text' => 'article', 'created_at' => '2024-01-01 12:00:00', ]); return $res; } } ?>

Результат выполнения кода:

1

Пример

Давайте вставим пользователя с указанием типов данных столбцов:

<?php namespace App\Repository; use Doctrine\DBAL\Connection; use Doctrine\DBAL\ParameterType; class UserRepository { public function __construct( private Connection $connection ) { } public function createUser(): int { $res = $this->connection->insert( 'user', [ 'name' => 'user', 'email' => 'hello', 'age' => 25, 'active' => true, ], [ 'age' => ParameterType::INTEGER, 'active' => ParameterType::BOOLEAN, ] ); return $res; } } ?>

Результат выполнения кода:

1

Пример

Давайте получим идентификатор только что вставленной записи:

<?php namespace App\Repository; use Doctrine\DBAL\Connection; class ArticleRepository { public function __construct( private Connection $connection ) { } public function createAndGetId(): int { $this->connection->insert('article', [ 'title' => 'abcde', 'text' => 'article', ]); $res = $this->connection->lastInsertId(); return (int) $res; } } ?>

Результат выполнения кода:

1

Смотрите также

  • класс Connection,
    который управляет соединением с базой данных
  • метод lastInsertId,
    который возвращает ID последней вставленной записи
  • метод update,
    который обновляет строки в таблице
  • метод delete,
    который удаляет строки из таблицы
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить