<?php
declare(strict_types=1);
namespace DoctrineMigrations;
use Doctrine\DBAL\Schema\Schema;
use Doctrine\Migrations\AbstractMigration;
/**
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20211212093054 extends AbstractMigration
{
public function getDescription(): string
{
return '';
}
public function up(Schema $schema): void
{
// this up() migration is auto-generated, please modify it to your needs
$this->addSql('DROP INDEX IDX_A2F98E47A76ED395');
$this->addSql('DROP INDEX slug_idx');
$this->addSql('DROP INDEX key_idx');
$this->addSql('CREATE TEMPORARY TABLE __temp__channel AS SELECT id, user_id, "key", slug, name, last_upload_at FROM channel');
$this->addSql('DROP TABLE channel');
$this->addSql('CREATE TABLE channel (id BLOB NOT NULL --(DC2Type:uuid)
, user_id INTEGER DEFAULT NULL, "key" VARCHAR(255) NOT NULL COLLATE BINARY, slug VARCHAR(255) NOT NULL COLLATE BINARY, name VARCHAR(255) DEFAULT NULL COLLATE BINARY, last_upload_at DATETIME NOT NULL, PRIMARY KEY(id), CONSTRAINT FK_A2F98E47A76ED395 FOREIGN KEY (user_id) REFERENCES "user" (id) NOT DEFERRABLE INITIALLY IMMEDIATE)');
$this->addSql('INSERT INTO channel (id, user_id, "key", slug, name, last_upload_at) SELECT id, user_id, "key", slug, name, last_upload_at FROM __temp__channel');
$this->addSql('DROP TABLE __temp__channel');
$this->addSql('CREATE INDEX IDX_A2F98E47A76ED395 ON channel (user_id)');
$this->addSql('CREATE UNIQUE INDEX slug_idx ON channel (slug)');
$this->addSql('CREATE UNIQUE INDEX key_idx ON channel ("key")');
$this->addSql('DROP INDEX IDX_7CE748AA76ED395');
$this->addSql('CREATE TEMPORARY TABLE __temp__reset_password_request AS SELECT id, user_id, selector, hashed_token, requested_at, expires_at FROM reset_password_request');
$this->addSql('DROP TABLE reset_password_request');
$this->addSql('CREATE TABLE reset_password_request (id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, user_id INTEGER NOT NULL, selector VARCHAR(20) NOT NULL COLLATE BINARY, hashed_token VARCHAR(100) NOT NULL COLLATE BINARY, requested_at DATETIME NOT NULL --(DC2Type:datetime_immutable)
, expires_at DATETIME NOT NULL --(DC2Type:datetime_immutable)
, CONSTRAINT FK_7CE748AA76ED395 FOREIGN KEY (user_id) REFERENCES "user" (id) NOT DEFERRABLE INITIALLY IMMEDIATE)');
$this->addSql('INSERT INTO reset_password_request (id, user_id, selector, hashed_token, requested_at, expires_at) SELECT id, user_id, selector, hashed_token, requested_at, expires_at FROM __temp__reset_password_request');
$this->addSql('DROP TABLE __temp__reset_password_request');
$this->addSql('CREATE INDEX IDX_7CE748AA76ED395 ON reset_password_request (user_id)');
}
public function down(Schema $schema): void
{
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('DROP INDEX IDX_A2F98E47A76ED395');
$this->addSql('DROP INDEX slug_idx');
$this->addSql('DROP INDEX key_idx');
$this->addSql('CREATE TEMPORARY TABLE __temp__channel AS SELECT id, user_id, "key", slug, name, last_upload_at FROM channel');
$this->addSql('DROP TABLE channel');
$this->addSql('CREATE TABLE channel (id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, user_id INTEGER DEFAULT NULL, "key" VARCHAR(255) NOT NULL, slug VARCHAR(255) NOT NULL, name VARCHAR(255) DEFAULT NULL, last_upload_at DATETIME NOT NULL)');
$this->addSql('INSERT INTO channel (id, user_id, "key", slug, name, last_upload_at) SELECT id, user_id, "key", slug, name, last_upload_at FROM __temp__channel');
$this->addSql('DROP TABLE __temp__channel');
$this->addSql('CREATE INDEX IDX_A2F98E47A76ED395 ON channel (user_id)');
$this->addSql('CREATE UNIQUE INDEX slug_idx ON channel (slug)');
$this->addSql('CREATE UNIQUE INDEX key_idx ON channel ("key")');
$this->addSql('DROP INDEX IDX_7CE748AA76ED395');
$this->addSql('CREATE TEMPORARY TABLE __temp__reset_password_request AS SELECT id, user_id, selector, hashed_token, requested_at, expires_at FROM reset_password_request');
$this->addSql('DROP TABLE reset_password_request');
$this->addSql('CREATE TABLE reset_password_request (id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, user_id INTEGER NOT NULL, selector VARCHAR(20) NOT NULL, hashed_token VARCHAR(100) NOT NULL, requested_at DATETIME NOT NULL --(DC2Type:datetime_immutable)
, expires_at DATETIME NOT NULL --(DC2Type:datetime_immutable)
)');
$this->addSql('INSERT INTO reset_password_request (id, user_id, selector, hashed_token, requested_at, expires_at) SELECT id, user_id, selector, hashed_token, requested_at, expires_at FROM __temp__reset_password_request');
$this->addSql('DROP TABLE __temp__reset_password_request');
$this->addSql('CREATE INDEX IDX_7CE748AA76ED395 ON reset_password_request (user_id)');
}
}