Запрос DROP MySQL запускает динамически - PullRequest
0 голосов
/ 07 мая 2018

Можем ли мы удалить набор триггеров в mysql, передав массив в запрос DROP TRIGGERS из PHP?

$triggersToDelete = ['trigger1', 'trigger2', 'trigger6'];

$sql = 'DROP TRIGGER IF EXISTS $triggersToDelete';

Возможно ли это? Или каким-нибудь лучшим способом добиться этого? Заранее спасибо.

1 Ответ

0 голосов
/ 07 мая 2018

Что-то вроде этого сделало бы работу.

<?php

$host = "localhost";
$user = "root";
$pass = "";
$database ="dbname";

$conn = mysqli_connect($host, $user, $pass, $database);

if (!$conn) {
    die("Failed to connect to the database");
}

$triggersToDelete = ["trigger1", "trigger2", "trigger6"];

foreach ($triggersToDelete as $trigger) {
    if (!mysqli_query($conn, "DROP TRIGGER IF EXISTS " . htmlspecialchars($trigger, ENT_QUOTES))) {
        echo "Failed to delete trigger: " . $trigger . "<br>";
    }
}

mysqli_close($conn);

Подключиться к базе данных, выполнить сбросить триггер для каждого триггера в массиве, закрыть соединение с базой данных

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...