Je veux changer le nom de mes deux tables dans Laravel, je dois donc modifier manuellement le nom de la table ou cela peut être possible par la migration.
Tu peux le faire:
Schema::rename($currentTableName, $newTableName);
Pour supprimer une table existante, vous pouvez utiliser les méthodes drop ou dropIfExists:
Schema::drop('users');
Schema::dropIfExists('users');
Ajoutez simplement cela à une migration et cela devrait fonctionner.
Pour renommer une table de base de données existante, utilisez la méthode rename:
Schema::rename($from, $to);
Pour supprimer une table existante, vous pouvez utiliser les méthodes drop ou dropIfExists
:
Schema::drop('users');
Schema::dropIfExists('users');
vous pouvez renommer la table
Schema::rename('old_table', 'new_table');
mais faites attention si vous avez foreign keys
, indexes
et unique-s
.
ils ne seront pas supprimés après cela avec un simple
Schema::table('new_table', function (Blueprint $table) {
$table->dropForeign(['transaction_id']);
});
Ainsi, je recommande de supprimer d'abord foreign keys
et d'autres choses
Schema::table('old_table', function (Blueprint $table) {
$table->dropForeign(['transaction_id']);
});
Schema::rename('old_table', 'new_table');
Schema::table('new_table', function (Blueprint $table) {
$table->foreign('transaction_id')->references('id')->on('transactions');
});