<?php
declare(strict_types=1);
namespace DoctrineMigrations;
use Doctrine\DBAL\Schema\Schema;
use Doctrine\Migrations\AbstractMigration;
final class Version20221104133955 extends AbstractMigration
{
public function getDescription(): string
{
return 'Add ManyToMany relationship between campaign and manager';
}
public function up(Schema $schema): void
{
$this->addSql('CREATE TABLE campaign_manager (campaign_id BIGINT UNSIGNED NOT NULL, manager_id BIGINT UNSIGNED NOT NULL, INDEX IDX_529EB995F639F774 (campaign_id), INDEX IDX_529EB995783E3463 (manager_id), PRIMARY KEY(campaign_id, manager_id)) DEFAULT CHARACTER SET utf8 COLLATE `utf8_unicode_ci` ENGINE = InnoDB');
$this->addSql('ALTER TABLE campaign_manager ADD CONSTRAINT FK_529EB995F639F774 FOREIGN KEY (campaign_id) REFERENCES campaign (id) ON DELETE CASCADE');
$this->addSql('ALTER TABLE campaign_manager ADD CONSTRAINT FK_529EB995783E3463 FOREIGN KEY (manager_id) REFERENCES manager (id) ON DELETE CASCADE');
}
public function down(Schema $schema): void
{
$this->addSql('DROP TABLE campaign_manager');
}
public function isTransactional(): bool
{
return false;
}
}