addSql('CREATE TABLE car (id INT AUTO_INCREMENT NOT NULL, model_id INT NOT NULL, registration_plate VARCHAR(6) NOT NULL, location VARCHAR(255) NOT NULL, UNIQUE INDEX UNIQ_773DE69DFE3477B3 (registration_plate), INDEX IDX_773DE69D7975B7E7 (model_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB'); $this->addSql('CREATE TABLE car_brand (id INT AUTO_INCREMENT NOT NULL, name VARCHAR(255) NOT NULL, PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB'); $this->addSql('CREATE TABLE car_feature (id INT AUTO_INCREMENT NOT NULL, description VARCHAR(255) DEFAULT NULL, name VARCHAR(255) NOT NULL, PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB'); $this->addSql('CREATE TABLE car_model (id INT AUTO_INCREMENT NOT NULL, brand_id INT NOT NULL, model VARCHAR(255) NOT NULL, fuel_type VARCHAR(255) NOT NULL, INDEX IDX_83EF70E44F5D008 (brand_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB'); $this->addSql('CREATE TABLE car_model_car_feature (car_model_id INT NOT NULL, car_feature_id INT NOT NULL, INDEX IDX_96EA8D26F64382E3 (car_model_id), INDEX IDX_96EA8D26523B3668 (car_feature_id), PRIMARY KEY(car_model_id, car_feature_id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB'); $this->addSql('ALTER TABLE car ADD CONSTRAINT FK_773DE69D7975B7E7 FOREIGN KEY (model_id) REFERENCES car_model (id)'); $this->addSql('ALTER TABLE car_model ADD CONSTRAINT FK_83EF70E44F5D008 FOREIGN KEY (brand_id) REFERENCES car_brand (id)'); $this->addSql('ALTER TABLE car_model_car_feature ADD CONSTRAINT FK_96EA8D26F64382E3 FOREIGN KEY (car_model_id) REFERENCES car_model (id) ON DELETE CASCADE'); $this->addSql('ALTER TABLE car_model_car_feature ADD CONSTRAINT FK_96EA8D26523B3668 FOREIGN KEY (car_feature_id) REFERENCES car_feature (id) ON DELETE CASCADE'); } public function down(Schema $schema): void { // this down() migration is auto-generated, please modify it to your needs $this->addSql('ALTER TABLE car DROP FOREIGN KEY FK_773DE69D7975B7E7'); $this->addSql('ALTER TABLE car_model DROP FOREIGN KEY FK_83EF70E44F5D008'); $this->addSql('ALTER TABLE car_model_car_feature DROP FOREIGN KEY FK_96EA8D26F64382E3'); $this->addSql('ALTER TABLE car_model_car_feature DROP FOREIGN KEY FK_96EA8D26523B3668'); $this->addSql('DROP TABLE car'); $this->addSql('DROP TABLE car_brand'); $this->addSql('DROP TABLE car_feature'); $this->addSql('DROP TABLE car_model'); $this->addSql('DROP TABLE car_model_car_feature'); } }