Passed
Push — main ( ccc364...bce7d4 )
by Karl
06:19
created

Version20240608114613   A

Complexity

Total Complexity 3

Size/Duplication

Total Lines 30
Duplicated Lines 0 %

Importance

Changes 1
Bugs 0 Features 1
Metric Value
wmc 3
eloc 17
c 1
b 0
f 1
dl 0
loc 30
rs 10

3 Methods

Rating   Name   Duplication   Size   Complexity  
A down() 0 10 1
A getDescription() 0 3 1
A up() 0 11 1
1
<?php
2
3
declare(strict_types=1);
4
5
namespace DoctrineMigrations;
6
7
use Doctrine\DBAL\Schema\Schema;
8
use Doctrine\Migrations\AbstractMigration;
9
10
/**
11
 * Auto-generated Migration: Please modify to your needs!
12
 */
13
final class Version20240608114613 extends AbstractMigration
14
{
15
    public function getDescription(): string
16
    {
17
        return '';
18
    }
19
20
    public function up(Schema $schema): void
21
    {
22
        // this up() migration is auto-generated, please modify it to your needs
23
        $this->addSql('CREATE TABLE organization_journal (organization_id INTEGER NOT NULL, journal_id INTEGER NOT NULL, PRIMARY KEY(organization_id, journal_id), CONSTRAINT FK_C756F0E32C8A3DE FOREIGN KEY (organization_id) REFERENCES organization (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE, CONSTRAINT FK_C756F0E478E8802 FOREIGN KEY (journal_id) REFERENCES journal (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE)');
24
        $this->addSql('CREATE INDEX IDX_C756F0E32C8A3DE ON organization_journal (organization_id)');
25
        $this->addSql('CREATE INDEX IDX_C756F0E478E8802 ON organization_journal (journal_id)');
26
        $this->addSql('CREATE TEMPORARY TABLE __temp__organization AS SELECT id, name FROM organization');
27
        $this->addSql('DROP TABLE organization');
28
        $this->addSql('CREATE TABLE organization (id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, name VARCHAR(255) NOT NULL)');
29
        $this->addSql('INSERT INTO organization (id, name) SELECT id, name FROM __temp__organization');
30
        $this->addSql('DROP TABLE __temp__organization');
31
    }
32
33
    public function down(Schema $schema): void
34
    {
35
        // this down() migration is auto-generated, please modify it to your needs
36
        $this->addSql('DROP TABLE organization_journal');
37
        $this->addSql('CREATE TEMPORARY TABLE __temp__organization AS SELECT id, name FROM organization');
38
        $this->addSql('DROP TABLE organization');
39
        $this->addSql('CREATE TABLE organization (id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, journal_id INTEGER DEFAULT NULL, name VARCHAR(255) NOT NULL, CONSTRAINT FK_C1EE637C478E8802 FOREIGN KEY (journal_id) REFERENCES journal (id) ON UPDATE NO ACTION ON DELETE NO ACTION NOT DEFERRABLE INITIALLY IMMEDIATE)');
40
        $this->addSql('INSERT INTO organization (id, name) SELECT id, name FROM __temp__organization');
41
        $this->addSql('DROP TABLE __temp__organization');
42
        $this->addSql('CREATE INDEX IDX_C1EE637C478E8802 ON organization (journal_id)');
43
    }
44
}
45