Créez la migration
aml make:migration create_books_tableAML ajoute un préfixe temporel au fichier dans runtime/database/migrations. Cet ordre empêche deux changements d’être appliqués au hasard.
Décrivez la table
use AML\Data\Connection;
use AML\Data\Migrations\Migration;
use AML\Data\Schema\{Schema, Table};
return new class extends Migration {
public function up(Connection $connection): void
{
(new Schema($connection))->create('books', function (Table $table): void {
$table->id();
$table->string('title', 180);
$table->string('author', 120);
$table->timestamps();
});
}
public function down(Connection $connection): void
{
(new Schema($connection))->dropIfExists('books');
}
};Appliquez, inspectez, annulez
aml data:migrate
aml data:status
aml data:rollback --steps 1
aml data:migrateLe migrateur mémorise ce qui a déjà été exécuté : relancer data:migrate n’applique que les fichiers en attente. Un verrou empêche deux processus de modifier le schéma simultanément.
Rollback signifie perte possible
Supprimer une table avec down() supprime aussi ses lignes. Utilisez le rollback pour le développement contrôlé et sauvegardez toujours la production.