Gibt es einen Weg/Laravel-Befehl, um eine bestimmte Tabelle vom Produktionsserver zu löschen?Laravel-Migrationen: Löschen einer bestimmten Tabelle
Antwort
Richten Sie eine Migration ein.
Führen Sie diesen Befehl, um eine Migration einzurichten:
php artisan make:migration drop_my_table
Dann können Sie Ihre Migration wie folgt strukturiert:
<?php
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
class DropMyTable extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
// drop the table
Schema::dropIfExists('my_table');
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
// create the table
Schema::create('my_table', function (Blueprint $table) {
$table->increments('id');
// .. other columns
$table->timestamps();
});
}
}
Selbstverständlich können Sie nur auf die Existenz überprüfen fallen und nicht:
Schema::drop('my_table');
Lesen Sie weiter in der Dokumentation hier:
https://laravel.com/docs/5.2/migrations#writing-migrations
Sie können auch alle vorhandenen Fremdschlüssel/Indizes, zum Beispiel zu prüfen, haben fallen, wenn Sie einen Primärschlüssel fallen wollte:
public function up()
{
Schema::table('my_table', function ($table) {
$table->dropPrimary('my_table_id_primary');
});
Schema::dropIfExists('my_table');
}
Mehr in der Dokumentation in Löschen von Indizes etc hier:
können Sie php artisan migrate:rollback --help
verwenden, um zu sehen, ob es ein Befehl für den scpecific Tisch fallen.
wie Sie sehen, gibt es keine Möglichkeit, in Laravel bestimmten Tabelle zu löschen. noch nicht. CMIW. Ein anderer Ausweg ist, sie manuell oder mit phpmyadmin zu löschen. Hoffe es hilft
Dies funktioniert wie ein Charme !, Danke! –