aboutsummaryrefslogtreecommitdiffhomepage
path: root/app/DoctrineMigrations/Version20160812120952.php
diff options
context:
space:
mode:
authorJeremy Benoist <j0k3r@users.noreply.github.com>2016-11-30 14:17:40 +0100
committerGitHub <noreply@github.com>2016-11-30 14:17:40 +0100
commit9abac9651fd0af4586245364657dc9455ba5c73c (patch)
treefb8f3e1c5ac43d1f08d4197af7026eb1cd27eb00 /app/DoctrineMigrations/Version20160812120952.php
parentad51d77146494f04466c288b05b57b0d96113fd5 (diff)
parent067ae472cc50a6047d6197f1a042ce239153407d (diff)
downloadwallabag-9abac9651fd0af4586245364657dc9455ba5c73c.tar.gz
wallabag-9abac9651fd0af4586245364657dc9455ba5c73c.tar.zst
wallabag-9abac9651fd0af4586245364657dc9455ba5c73c.zip
Merge pull request #2650 from wallabag/add-hascolumn
Added hasColumn() in migration to check column existence
Diffstat (limited to 'app/DoctrineMigrations/Version20160812120952.php')
-rw-r--r--app/DoctrineMigrations/Version20160812120952.php23
1 files changed, 7 insertions, 16 deletions
diff --git a/app/DoctrineMigrations/Version20160812120952.php b/app/DoctrineMigrations/Version20160812120952.php
index 39423e2f..053b8d88 100644
--- a/app/DoctrineMigrations/Version20160812120952.php
+++ b/app/DoctrineMigrations/Version20160812120952.php
@@ -21,7 +21,7 @@ class Version20160812120952 extends AbstractMigration implements ContainerAwareI
21 21
22 private function getTable($tableName) 22 private function getTable($tableName)
23 { 23 {
24 return $this->container->getParameter('database_table_prefix') . $tableName; 24 return $this->container->getParameter('database_table_prefix').$tableName;
25 } 25 }
26 26
27 /** 27 /**
@@ -29,18 +29,10 @@ class Version20160812120952 extends AbstractMigration implements ContainerAwareI
29 */ 29 */
30 public function up(Schema $schema) 30 public function up(Schema $schema)
31 { 31 {
32 switch ($this->connection->getDatabasePlatform()->getName()) { 32 $clientsTable = $schema->getTable($this->getTable('oauth2_clients'));
33 case 'sqlite': 33 $this->skipIf($clientsTable->hasColumn('name'), 'It seems that you already played this migration.');
34 $this->addSql('ALTER TABLE '.$this->getTable('oauth2_clients').' ADD name longtext DEFAULT NULL'); 34
35 break; 35 $clientsTable->addColumn('name', 'blob');
36
37 case 'mysql':
38 $this->addSql('ALTER TABLE '.$this->getTable('oauth2_clients').' ADD name longtext COLLATE \'utf8_unicode_ci\' DEFAULT NULL');
39 break;
40
41 case 'postgresql':
42 $this->addSql('ALTER TABLE '.$this->getTable('oauth2_clients').' ADD name text DEFAULT NULL');
43 }
44 } 36 }
45 37
46 /** 38 /**
@@ -48,8 +40,7 @@ class Version20160812120952 extends AbstractMigration implements ContainerAwareI
48 */ 40 */
49 public function down(Schema $schema) 41 public function down(Schema $schema)
50 { 42 {
51 $this->abortIf($this->connection->getDatabasePlatform()->getName() == 'sqlite', 'Migration can only be executed safely on \'mysql\' or \'postgresql\'.'); 43 $clientsTable = $schema->getTable($this->getTable('oauth2_clients'));
52 44 $clientsTable->dropColumn('name');
53 $this->addSql('ALTER TABLE '.$this->getTable('oauth2_clients').' DROP COLUMN name');
54 } 45 }
55} 46}