addSql('CREATE TABLE feature (id INT GENERATED BY DEFAULT AS IDENTITY NOT NULL, name VARCHAR(255) NOT NULL, is_active BOOLEAN NOT NULL, PRIMARY KEY (id))'); $this->addSql('CREATE TABLE image (id INT GENERATED BY DEFAULT AS IDENTITY NOT NULL, name VARCHAR(255) NOT NULL, url VARCHAR(255) NOT NULL, size INT NOT NULL, PRIMARY KEY (id))'); $this->addSql('CREATE TABLE news (id INT GENERATED BY DEFAULT AS IDENTITY NOT NULL, title VARCHAR(255) DEFAULT NULL, description TEXT DEFAULT NULL, created_at TIMESTAMP(0) WITHOUT TIME ZONE NOT NULL, updated_at TIMESTAMP(0) WITHOUT TIME ZONE NOT NULL, ordre INT NOT NULL, is_active BOOLEAN NOT NULL, slug VARCHAR(255) NOT NULL, PRIMARY KEY (id))'); $this->addSql('CREATE UNIQUE INDEX UNIQ_1DD39950989D9B62 ON news (slug)'); $this->addSql('CREATE TABLE news_image (id INT GENERATED BY DEFAULT AS IDENTITY NOT NULL, ordre INT NOT NULL, news_id INT NOT NULL, image_id INT NOT NULL, PRIMARY KEY (id))'); $this->addSql('CREATE INDEX IDX_BF828301B5A459A0 ON news_image (news_id)'); $this->addSql('CREATE INDEX IDX_BF8283013DA5256D ON news_image (image_id)'); $this->addSql('CREATE TABLE "user" (id INT GENERATED BY DEFAULT AS IDENTITY NOT NULL, email VARCHAR(180) NOT NULL, roles JSON NOT NULL, firstname VARCHAR(255) NOT NULL, lastname VARCHAR(255) NOT NULL, keycloak_id VARCHAR(255) NOT NULL, PRIMARY KEY (id))'); $this->addSql('CREATE UNIQUE INDEX UNIQ_IDENTIFIER_EMAIL ON "user" (email)'); $this->addSql('CREATE TABLE messenger_messages (id BIGINT GENERATED BY DEFAULT AS IDENTITY NOT NULL, body TEXT NOT NULL, headers TEXT NOT NULL, queue_name VARCHAR(190) NOT NULL, created_at TIMESTAMP(0) WITHOUT TIME ZONE NOT NULL, available_at TIMESTAMP(0) WITHOUT TIME ZONE NOT NULL, delivered_at TIMESTAMP(0) WITHOUT TIME ZONE DEFAULT NULL, PRIMARY KEY (id))'); $this->addSql('CREATE INDEX IDX_75EA56E0FB7336F0E3BD61CE16BA31DBBF396750 ON messenger_messages (queue_name, available_at, delivered_at, id)'); $this->addSql('ALTER TABLE news_image ADD CONSTRAINT FK_BF828301B5A459A0 FOREIGN KEY (news_id) REFERENCES news (id) NOT DEFERRABLE'); $this->addSql('ALTER TABLE news_image ADD CONSTRAINT FK_BF8283013DA5256D FOREIGN KEY (image_id) REFERENCES image (id) NOT DEFERRABLE'); } public function down(Schema $schema): void { // this down() migration is auto-generated, please modify it to your needs $this->addSql('ALTER TABLE news_image DROP CONSTRAINT FK_BF828301B5A459A0'); $this->addSql('ALTER TABLE news_image DROP CONSTRAINT FK_BF8283013DA5256D'); $this->addSql('DROP TABLE feature'); $this->addSql('DROP TABLE image'); $this->addSql('DROP TABLE news'); $this->addSql('DROP TABLE news_image'); $this->addSql('DROP TABLE "user"'); $this->addSql('DROP TABLE messenger_messages'); } }