migrations/Version20190515095417.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. /**
  7.  * Auto-generated Migration: Please modify to your needs!
  8.  */
  9. final class Version20190515095417 extends AbstractMigration
  10. {
  11.     public function getDescription() : string
  12.     {
  13.         return '';
  14.     }
  15.     public function up(Schema $schema) : void
  16.     {
  17.         // this up() migration is auto-generated, please modify it to your needs
  18.         $this->abortIf($this->connection->getDatabasePlatform()->getName() !== 'mysql''Migration can only be executed safely on \'mysql\'.');
  19.         $this->addSql('ALTER TABLE std_attributes_values CHANGE value value VARCHAR(20) NOT NULL COMMENT \'Attribute value\'');
  20.         $this->addSql('ALTER TABLE std_pages_attributes_values DROP FOREIGN KEY FK_A31671E865A22152');
  21.         $this->addSql('DROP INDEX IDX_A31671E865A22152 ON std_pages_attributes_values');
  22.         $this->addSql('ALTER TABLE std_pages_attributes_values DROP PRIMARY KEY');
  23.         $this->addSql('ALTER TABLE std_pages_attributes_values ADD value VARCHAR(20) NOT NULL COMMENT \'Attribute value\', ADD attribute_id INT UNSIGNED NOT NULL COMMENT \'Attribute unique identifier\', DROP attribute_value_id');
  24.         $this->addSql('ALTER TABLE std_pages_attributes_values ADD CONSTRAINT FK_A31671E8B6E62EFA FOREIGN KEY (attribute_id) REFERENCES std_attributes (id)');
  25.         $this->addSql('CREATE INDEX IDX_A31671E8B6E62EFA ON std_pages_attributes_values (attribute_id)');
  26.         $this->addSql('ALTER TABLE std_pages_attributes_values ADD PRIMARY KEY (page_id, attribute_id, value)');
  27.     }
  28.     public function down(Schema $schema) : void
  29.     {
  30.         // this down() migration is auto-generated, please modify it to your needs
  31.         $this->abortIf($this->connection->getDatabasePlatform()->getName() !== 'mysql''Migration can only be executed safely on \'mysql\'.');
  32.         $this->addSql('ALTER TABLE std_attributes_values CHANGE value value VARCHAR(100) NOT NULL COLLATE utf8mb4_unicode_ci COMMENT \'Attribute value\'');
  33.         $this->addSql('ALTER TABLE std_pages_attributes_values DROP FOREIGN KEY FK_A31671E8B6E62EFA');
  34.         $this->addSql('DROP INDEX IDX_A31671E8B6E62EFA ON std_pages_attributes_values');
  35.         $this->addSql('ALTER TABLE std_pages_attributes_values DROP PRIMARY KEY');
  36.         $this->addSql('ALTER TABLE std_pages_attributes_values ADD attribute_value_id INT UNSIGNED NOT NULL COMMENT \'Attribute value unique identifier\', DROP value, DROP attribute_id');
  37.         $this->addSql('ALTER TABLE std_pages_attributes_values ADD CONSTRAINT FK_A31671E865A22152 FOREIGN KEY (attribute_value_id) REFERENCES std_attributes_values (id)');
  38.         $this->addSql('CREATE INDEX IDX_A31671E865A22152 ON std_pages_attributes_values (attribute_value_id)');
  39.         $this->addSql('ALTER TABLE std_pages_attributes_values ADD PRIMARY KEY (page_id, attribute_value_id)');
  40.     }
  41. }