final class Version20250618185937_PIRATEROUND extends AbstractMigration
12
{
13
public function getDescription(): string
14
{
15
return 'Adds Pirate Round tables';
16
}
17
18
public function up(Schema $schema): void
19
{
20
$this->addSql(<<<'SQL'
21
CREATE TABLE stu_pirate_round (id INT GENERATED BY DEFAULT AS IDENTITY NOT NULL, start INT NOT NULL, end_time INT DEFAULT NULL, max_prestige INT NOT NULL, actual_prestige INT NOT NULL, faction_winner INT DEFAULT NULL, PRIMARY KEY(id))
22
SQL);
23
$this->addSql(<<<'SQL'
24
CREATE TABLE stu_user_pirate_round (id INT GENERATED BY DEFAULT AS IDENTITY NOT NULL, user_id INT NOT NULL, pirate_round_id INT NOT NULL, destroyed_ships INT NOT NULL, prestige INT NOT NULL, PRIMARY KEY(id))
25
SQL);
26
$this->addSql(<<<'SQL'
27
CREATE INDEX IDX_3CECD0A8A76ED395 ON stu_user_pirate_round (user_id)
28
SQL);
29
$this->addSql(<<<'SQL'
30
CREATE INDEX IDX_3CECD0A88DA7A3A1 ON stu_user_pirate_round (pirate_round_id)
31
SQL);
32
$this->addSql(<<<'SQL'
33
ALTER TABLE stu_user_pirate_round ADD CONSTRAINT FK_3CECD0A8A76ED395 FOREIGN KEY (user_id) REFERENCES stu_user (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE
34
SQL);
35
$this->addSql(<<<'SQL'
36
ALTER TABLE stu_user_pirate_round ADD CONSTRAINT FK_3CECD0A88DA7A3A1 FOREIGN KEY (pirate_round_id) REFERENCES stu_pirate_round (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE
37
SQL);
38
}
39
40
public function down(Schema $schema): void
41
{
42
$this->addSql(<<<'SQL'
43
ALTER TABLE stu_user_pirate_round DROP CONSTRAINT FK_3CECD0A8A76ED395
44
SQL);
45
$this->addSql(<<<'SQL'
46
ALTER TABLE stu_user_pirate_round DROP CONSTRAINT FK_3CECD0A88DA7A3A1