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

Метод statement

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

В отличие от методов select и insert, метод statement используется для выполнения запросов, которые не предполагают получение данных обратно. Он идеально подходит для миграций, очистки таблиц, создания временных таблиц и выполнения хранимых процедур.

Синтаксис

<?php DB::statement($query, $bindings); ?>

Пример

Выполним запрос на создание новой таблицы для хранения логов:

<?php use Illuminate\Support\Facades\DB; $sql = 'CREATE TABLE logs ( id INT AUTO_INCREMENT PRIMARY KEY, message TEXT, created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP )'; $res = DB::statement($sql); echo $res; ?>

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

"true"

Пример

Очистим таблицу "users" от всех записей с помощью SQL-команды TRUNCATE:

<?php use Illuminate\Support\Facades\DB; $res = DB::statement('TRUNCATE TABLE users'); echo $res; ?>

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

"true"

Пример

Изменим структуру таблицы, добавив новое поле "phone" типа VARCHAR:

<?php use Illuminate\Support\Facades\DB; $res = DB::statement('ALTER TABLE users ADD COLUMN phone VARCHAR(20)'); echo $res; ?>

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

"true"

Пример

Выполним обновление данных с использованием привязки параметров для безопасности:

<?php use Illuminate\Support\Facades\DB; $user_id = 5; $status = 'active'; $res = DB::statement('UPDATE users SET status = ? WHERE id = ?', [$status, $user_id]); echo $res; ?>

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

"1"

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

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