進捗どうでしょう

主な話題は 社会人生活/情報工学/アニメ/ライトノベル/漫画/映画/自炊 などです。

MENU

MySQL消えてくれ

$ php artisan migrate

Illuminate\Database\QueryException

SQLSTATE[HY000] [1044] Access denied for user ...

  migrateしようとしたらエラーが出た。

 原因はMySQL8.0の認証プラグインcaching_sha2_passwordであるのに、LaravelのPHPでは認証プラグインがまだmysql_native_passwordであるかららしい。

 詳しい解決方法はこのサイトを参考にしました。

yaba-blog.com

 疲れた。

 もう二度とLaravelもMySQLもAzureも触りたくない。

 

  なんて言っていたらまたmigrateでエラー。

$ php artisan migrate
Migrating: 2020_06_17_200051_create_device_table

BadMethodCallException

Method Illuminate\Database\Schema\Blueprint::increment does not exist.

 なんかメソッドが悪い?

 まさかと思ったら、

    public function up()
    {
        Schema::create('device'function (Blueprint $table) {
            //$table->id();
            $table->increment('id');
            $table->string('DeviceId');
            $table->timestamps();
        });
    }

 じゃなくて、

    public function up()
    {
        Schema::create('device'function (Blueprint $table) {
            //$table->id();
            $table->increments('id');
            $table->string('DeviceId');
            $table->timestamps();
        });
    }

  でした。どこが違うかわかりますか???

 はい、increment()じゃなくてincrements()ですね。

 これ、参考書に使ってるLaravel入門で誤植してました。もうほんとさ……。