この記事で解決できる悩み
いずみ
こんな悩みを解決できる記事を書きました!
僕は現役フリーランスエンジニア(歴9年)で、資格は13個保有しています。
「Laravelのmigrationでカラムの型が変更できない場合の対処法を知りたい」とお考えではありませんか?
Laravelでマイグレーションを行う場合、「doctrine/dbal」を使うのが一般的です。
ただ、カラムの型を変更する際に「doctrine/dbal」だと型が変更できないことがあります。
無駄にハマりました…
ということで、本記事ではLaravelのmigrationでカラムの型が変更できない場合の対処法を解説します。
すぐ読み終わるので、ぜひ最後まで読んでくださいませ。
目次
【Laravel】migrationでカラムの型が変更できない場合の対処法
早速ですが、Laravelのmigrationでカラムの型が変更できない場合の対処法を解説します。
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
return new class extends Migration
{
public function up()
{
DB::connection()->getPdo()->exec('ALTER TABLE your_table ALTER COLUMN your_column TYPE VARCHAR(10);');
}
public function down()
{
DB::connection()->getPdo()->exec('ALTER TABLE your_table ALTER COLUMN your_column TYPE CHAR(10);');
}
};
上記のように、直接SQLを実行すれば解決します。
簡単でしたが根本原因は分かりませんでした(笑)
まとめ
今回は、Laravelのmigrationでカラムの型が変更できない場合の対処法について解説しました。
以下が本記事のまとめになります。
- おすすめ本
Laravelの勉強なら「PHPフレームワーク Laravel入門 第2版
最後までお読みいただき、ありがとうございました!
- クソおすすめ本
海外のエンジニアがどういった思考で働いているかが理解できます。
海外に行く気はないけど海外エンジニアの動向が気になる雑魚エンジニアにおすすめです(本当におすすめな本しか紹介しないのでご安心を)。