]> git.mxchange.org Git - quix0rs-gnu-social.git/blobdiff - lib/pgsqlschema.php
fix ModPlus 'remote profile options' popup for Realtime
[quix0rs-gnu-social.git] / lib / pgsqlschema.php
index 16639ff1b07c8ea2556ec33b9855468aabcf1172..272f7eff683f354e5ca72a42401e7e0ddd0c5c4c 100644 (file)
@@ -143,6 +143,7 @@ class PgsqlSchema extends Schema
         $uniques = array();
         $primary = array();
         $indices = array();
+       $onupdate = array();
 
         $sql = "CREATE TABLE $name (\n";
 
@@ -321,7 +322,7 @@ class PgsqlSchema extends Schema
 
     public function modifyColumn($table, $columndef)
     {
-        $sql = "ALTER TABLE $table MODIFY COLUMN " .
+        $sql = "ALTER TABLE $table ALTER COLUMN TYPE " .
           $this->_columnSql($columndef);
 
         $res = $this->conn->query($sql);
@@ -428,7 +429,9 @@ class PgsqlSchema extends Schema
         foreach ($tomod as $columnName) {
             $cd = $this->_byName($columns, $columnName);
 
-            $phrase[] = 'MODIFY COLUMN ' . $this->_columnSql($cd);
+       /* brute force */
+            $phrase[] = 'DROP COLUMN ' . $columnName;
+            $phrase[] = 'ADD COLUMN ' . $this->_columnSql($cd);
         }
 
         $sql = 'ALTER TABLE ' . $tableName . ' ' . implode(', ', $phrase);
@@ -505,7 +508,7 @@ class PgsqlSchema extends Schema
           return $sql;
         }
         if (!empty($cd->auto_increment)) {
-          $type = 'serial';
+           $type = "bigserial"; // FIXME: creates the wrong name for the sequence for some internal sequence-lookup function, so better fix this to do the real 'create sequence' dance.
         }
 
         if (!empty($cd->size)) {
@@ -520,9 +523,9 @@ class PgsqlSchema extends Schema
             $sql .= ($cd->nullable) ? "null " : "not null ";
         }
 
-        if (!empty($cd->extra)) {
-            $sql .= "{$cd->extra} ";
-        }
+//         if (!empty($cd->extra)) {
+//             $sql .= "{$cd->extra} ";
+//         }
 
         return $sql;
     }