app/DoctrineMigrations/Version20251119163029.php line 1

Open in your IDE?
  1. <?php
    
    declare(strict_types=1);
    
    namespace DoctrineMigrations;
    
    use Doctrine\DBAL\Schema\Schema;
    use Doctrine\Migrations\AbstractMigration;
    
    /**
     * dtb_schoolテーブルの各種フラグカラムのNULL値を修正
     */
    final class Version20251119163029 extends AbstractMigration
    {
        public function getDescription(): string
        {
            return 'dtb_schoolテーブルのredirect_flgおよびその他のフラグカラムのNULL値をデフォルト値に修正';
        }
    
        public function up(Schema $schema): void
        {
            // redirect_flgのNULL値を0に設定
            $this->addSql("UPDATE dtb_school SET redirect_flg = 0 WHERE redirect_flg IS NULL OR redirect_flg = ''");
            
            // 他のフラグカラムも修正
            $this->addSql("UPDATE dtb_school SET filter_visible_flag = 1 WHERE filter_visible_flag IS NULL");
            $this->addSql("UPDATE dtb_school SET correct_size_menu_flag = 1 WHERE correct_size_menu_flag IS NULL");
            $this->addSql("UPDATE dtb_school SET correct_size_banner_flag = 1 WHERE correct_size_banner_flag IS NULL");
            $this->addSql("UPDATE dtb_school SET commitment_uniform_menu_flag = 1 WHERE commitment_uniform_menu_flag IS NULL");
            $this->addSql("UPDATE dtb_school SET commitment_uniform_banner_flag = 1 WHERE commitment_uniform_banner_flag IS NULL");
            $this->addSql("UPDATE dtb_school SET measurement_procedure_banner_flag = 1 WHERE measurement_procedure_banner_flag IS NULL");
            $this->addSql("UPDATE dtb_school SET return_exchange_banner_flag = 1 WHERE return_exchange_banner_flag IS NULL");
        }
    
        public function down(Schema $schema): void
        {
            // このマイグレーションはデータクリーニングのため、ロールバックは不要
        }
    }