container = $container; } private function getTable($tableName) { return $this->container->getParameter('database_table_prefix') . $tableName; } public function up(Schema $schema) { $tableName = $this->getTable('annotation'); switch ($this->connection->getDatabasePlatform()->getName()) { case 'sqlite': $this->addSql(<<addSql('DROP TABLE ' . $tableName); $this->addSql(<<addSql(<<addSql('DROP TABLE __temp__wallabag_annotation'); break; case 'mysql': $this->addSql('ALTER TABLE '.$tableName.' MODIFY quote TEXT NOT NULL'); break; case 'postgresql': $this->addSql('ALTER TABLE '.$tableName.' ALTER COLUMN quote TYPE TEXT NOT NULL '); break; } } public function down(Schema $schema) { $tableName = $this->getTable('annotation'); switch ($this->connection->getDatabasePlatform()->getName()) { case 'sqlite': throw new SkipMigrationException('Too complex ...'); break; case 'mysql': $this->addSql('ALTER TABLE '.$tableName.' MODIFY quote VARCHAR(255) NOT NULL'); break; case 'postgresql': $this->addSql('ALTER TABLE '.$tableName.' ALTER COLUMN quote TYPE VARCHAR(255) NOT NULL '); break; } } }