diff options
-rw-r--r-- | lib/mysqlschema.php | 38 | ||||
-rw-r--r-- | lib/pgsqlschema.php | 44 | ||||
-rw-r--r-- | lib/schema.php | 17 |
3 files changed, 9 insertions, 90 deletions
diff --git a/lib/mysqlschema.php b/lib/mysqlschema.php index 25f0e52f1..9785deb66 100644 --- a/lib/mysqlschema.php +++ b/lib/mysqlschema.php @@ -96,13 +96,6 @@ class MysqlSchema extends Schema // warning -- 'unsigned' attr on numbers isn't given in DATA_TYPE and friends. // It is stuck in on COLUMN_TYPE though (eg 'bigint(20) unsigned') - /* - list($type, $size) = $this->reverseMapType($row['DATA_TYPE']); - $field['type'] = $type; - if ($size !== null) { - $field['size'] = $size; - } - */ $field['type'] = $type = $row['DATA_TYPE']; if ($type == 'char' || $type == 'varchar') { @@ -487,37 +480,6 @@ class MysqlSchema extends Schema return $type; } - /** - * Map a MySQL native type back to an independent type + size - * - * @param string $type - * @return array ($type, $size) -- $size may be null - */ - /* - protected function reverseMapType($type) - { - $type = strtolower($type); - $map = array( - 'decimal' => array('numeric', null), - 'tinyint' => array('int', 'tiny'), - 'smallint' => array('int', 'small'), - 'mediumint' => array('int', 'medium'), - 'bigint' => array('int', 'big'), - 'tinyblob' => array('blob', 'tiny'), - 'mediumblob' => array('blob', 'medium'), - 'longblob' => array('blob', 'long'), - 'tinytext' => array('text', 'tiny'), - 'mediumtext' => array('text', 'medium'), - 'longtext' => array('text', 'long'), - ); - if (isset($map[$type])) { - return $map[$type]; - } else { - return array($type, null); - } - } - */ - function typeAndSize($column) { if ($column['type'] == 'enum') { diff --git a/lib/pgsqlschema.php b/lib/pgsqlschema.php index 0ffbcfc48..e5442467c 100644 --- a/lib/pgsqlschema.php +++ b/lib/pgsqlschema.php @@ -81,15 +81,6 @@ class PgsqlSchema extends Schema $orderedFields[$row['ordinal_position']] = $name; $field = array(); - - // ?? - /* - list($type, $size) = $this->reverseMapType($row['udt_name']); - $field['type'] = $type; - if ($size !== null) { - $field['size'] = $size; - } - */ $field['type'] = $row['udt_name']; if ($type == 'char' || $type == 'varchar') { @@ -366,12 +357,16 @@ class PgsqlSchema extends Schema $type = $map[$type]; } - if (!empty($column['size'])) { - $size = $column['size']; - if ($type == 'int' && - in_array($size, array('small', 'big'))) { - $type = $size . 'int'; + if ($type == 'int') { + if (!empty($column['size'])) { + $size = $column['size']; + if ($size == 'small') { + return 'int2'; + } else if ($size == 'big') { + return 'int8'; + } } + return 'int4'; } return $type; @@ -389,27 +384,6 @@ class PgsqlSchema extends Schema } /** - * Map a native type back to an independent type + size - * - * @param string $type - * @return array ($type, $size) -- $size may be null - */ - protected function reverseMapType($type) - { - $type = strtolower($type); - $map = array( - 'int4' => array('int', null), - 'int8' => array('int', 'big'), - 'bytea' => array('blob', null), - ); - if (isset($map[$type])) { - return $map[$type]; - } else { - return array($type, null); - } - } - - /** * Filter the given table definition array to match features available * in this database. * diff --git a/lib/schema.php b/lib/schema.php index 16fb50225..9f2899ba8 100644 --- a/lib/schema.php +++ b/lib/schema.php @@ -773,23 +773,6 @@ class Schema } /** - * Map a native type back to an independent type + size - * - * @param string $type - * @return array ($type, $size) -- $size may be null - */ - protected function reverseMapType($type) - { - $sizes = array('tiny', 'small', 'medium', 'big'); - foreach ($sizes as $prefix) { - if (substr($type, 0, strlen($prefix)) == $prefix) { - return array(substr($type, strlen($prefix)), $prefix); - } - } - return array($type, null); - } - - /** * Convert an old-style set of ColumnDef objects into the current * Drupal-style schema definition array, for backwards compatibility * with plugins written for 0.9.x. |