migrations/Version20230302092019.php line 1

Open in your IDE?
  1. <?php
  2. declare(strict_types=1);
  3. namespace DoctrineMigrations;
  4. use Doctrine\DBAL\Schema\Schema;
  5. use Doctrine\Migrations\AbstractMigration;
  6. final class Version20230302092019 extends AbstractMigration
  7. {
  8.     public function getDescription(): string
  9.     {
  10.         return 'add additional contacts';
  11.     }
  12.     public function up(Schema $schema): void
  13.     {
  14.         $this->addSql('CREATE TABLE mandate_contact (mandate_id INT NOT NULL, 
  15.             contact_id INT NOT NULL, PRIMARY KEY(mandate_id, contact_id))');
  16.         $this->addSql('CREATE INDEX IDX_8274AB136C1129CD ON mandate_contact (mandate_id)');
  17.         $this->addSql('CREATE INDEX IDX_8274AB13E7A1254A ON mandate_contact (contact_id)');
  18.         $this->addSql('ALTER TABLE mandate_contact ADD CONSTRAINT FK_8274AB136C1129CD 
  19.             FOREIGN KEY (mandate_id) REFERENCES mandate (id) 
  20.             ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE');
  21.         $this->addSql('ALTER TABLE mandate_contact ADD CONSTRAINT FK_8274AB13E7A1254A 
  22.             FOREIGN KEY (contact_id) REFERENCES contact (id) 
  23.             ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE');
  24.     }
  25.     public function down(Schema $schema): void
  26.     {
  27.         $this->addSql('ALTER TABLE mandate_contact DROP CONSTRAINT FK_8274AB136C1129CD');
  28.         $this->addSql('ALTER TABLE mandate_contact DROP CONSTRAINT FK_8274AB13E7A1254A');
  29.         $this->addSql('DROP TABLE mandate_contact');
  30.     }
  31. }