проблема с созданием скрипта для удаления таблицы с помощью контроллера laravel

#laravel

#laravel

Вопрос:

Я пытаюсь создать скрипт, с помощью которого я могу удалить таблицу с помощью одной ссылки. для этого у меня есть приведенный ниже код

 Route::get('delete_table','HomeController@delete_table')->name('delete_table');

public function delete_table(){
    $delete = DB::table('test')->delete();
    if($delete){
        echo 'success';
    }else{
        echo 'error';
    }
}
 

но когда я нажимаю на этот маршрут в своем браузере, я получаю error from else условие, но я не знаю, почему оно не работает.

кто-нибудь может мне помочь в этом?

Комментарии:

1. @lagbox нет, эта таблица пуста

2. тогда нет строк для удаления, поэтому он возвращает 0… он возвращает количество строк, на которые влияет оператор

3. DB::table('test')->delete(); не удаляет саму таблицу, как вы можете видеть из документов , вместо этого она удалит все записи в этой таблице, а возвращаемое значение будет равно количеству удаленных записей.

4. @Remul спасибо за ваш ответ, но я создаю этот скрипт для удаления нескольких таблиц одним щелчком мыши, не могли бы вы помочь мне с этим?

5. @Mohini конструктор запросов не поддерживает удаление таблиц, вместо этого вам нужно будет использовать конструктор схем , что-то вроде Schema::drop('test'); , но это всегда будет возвращать значение null, поэтому вам нужно будет проверить себя, действительно ли таблица была удалена.