Laravel 5

Erreur lors d'une migration

  • Avatar de Artemis-Lhow
    Membre depuis :
    17/05/2019
    Messages :
    15

    Bonjour,

    Je me tire les cheveux depuis hier soir sur un problème de migration... j'ai créer la migration depuis la console, tout va bien... mais lorsque je veux mettre à jour ma base de données, j'ai une erreur qui revient quoi que je fasse !

    Voici ma migration :

    <?php

    use Illuminate\Support\Facades\Schema;
    use Illuminate\Database\Schema\Blueprint;
    use Illuminate\Database\Migrations\Migration;

    class CreateGrpFormulesTable extends Migration
    {
    /
    Run the migrations.

    @return void
    /
    public function up()
    {
    Schema::table('grp_formules', function (Blueprint $table) {
    $table->bigIncrements('id');
    $table->string('nom');
    $table->timestamps();
    $table->softDeletes();
    });
    }

    /

    Reverse the migrations.

    @return void
    /
    public function down()
    {
    Schema::table('grp_formules', function (Blueprint $table) {
    //
    });
    }
    }

    Et voici l'erreur que j'ai ...

    Illuminate\Database\QueryException : SQLSTATE[42S02]: Base table or view not found: 1146 Table 'leogestion.grp_formules' doesn't exist (SQL: alter table grp_formules add id bigint unsigned not null auto_increment primary key, add nom varchar(255) not null, add created_at timestamp null, add updated_at timestamp null, add deleted_at timestamp null)

    at /var/www/Dev/vendor/laravel/framework/src/Illuminate/Database/Connection.php:664
    660| // If an exception occurs when attempting to run a query, we'll format the error
    661| // message to include the bindings with SQL, which will make this exception a
    662| // lot more helpful to the developer instead of just the database's errors.
    663| catch (Exception $e) {
    > 664| throw new QueryException(
    665| $query, $this->prepareBindings($bindings), $e
    666| );
    667| }
    668|

    Exception trace:

    1 PDOException::("SQLSTATE[42S02]: Base table or view not found: 1146 Table 'leogestion.grp_formules' doesn't exist")
    /var/www/Dev/vendor/laravel/framework/src/Illuminate/Database/Connection.php:458

    2 PDOStatement::execute()
    /var/www/Dev/vendor/laravel/framework/src/Illuminate/Database/Connection.php:458

    Please use the argument -v to see more details.

    C'est clairement rageant ! C'est la première fois que j'ai ça et j'ai tout essayé, changer le nom de la table, faire un rollback, refaire la migration à neuve... rien à faire !

    Help ?

    Edit : visiblement, lorsqu'on crée une migration avec la console, il utilise l'argument table au lieu de create dans la fonction up... qu'elle est la diférence et pourquoi fait-il ça ?

  • Avatar de bestmomo
    Membre depuis :
    07/04/2013
    Messages :
    2506

    Salut

    L'erreur dit que la table grp_formules n'existe pas, et donc qu'on peut pas créer les colonnes. Ta migration doit-elle créer la table ? Dans ce cas tu dois utiliser la commande create.

Vous ne pouvez pas répondre à ce sujet.