function Schema::getFieldTypeMap

Schema::getFieldTypeMap()

This maps a generic data type in combination with its data size to the engine-specific data type.

Overrides Schema::getFieldTypeMap

File

core/lib/Drupal/Core/Database/Driver/pgsql/Schema.php, line 364

Class

Schema
PostgreSQL implementation of \Drupal\Core\Database\Schema.

Namespace

Drupal\Core\Database\Driver\pgsql

Code

function getFieldTypeMap() {
  // Put :normal last so it gets preserved by array_flip. This makes
  // it much easier for modules (such as schema.module) to map
  // database types back into schema types.
  // $map does not use drupal_static as its value never changes.
  static $map = array(
    'varchar_ascii:normal' => 'varchar',

    'varchar:normal' => 'varchar',
    'char:normal' => 'character',

    'text:tiny' => 'text',
    'text:small' => 'text',
    'text:medium' => 'text',
    'text:big' => 'text',
    'text:normal' => 'text',

    'int:tiny' => 'smallint',
    'int:small' => 'smallint',
    'int:medium' => 'int',
    'int:big' => 'bigint',
    'int:normal' => 'int',

    'float:tiny' => 'real',
    'float:small' => 'real',
    'float:medium' => 'real',
    'float:big' => 'double precision',
    'float:normal' => 'real',

    'numeric:normal' => 'numeric',

    'blob:big' => 'bytea',
    'blob:normal' => 'bytea',

    'serial:tiny' => 'serial',
    'serial:small' => 'serial',
    'serial:medium' => 'serial',
    'serial:big' => 'bigserial',
    'serial:normal' => 'serial',
  );
  return $map;
}

© 2001–2016 by the original authors
Licensed under the GNU General Public License, version 2 and later.
Drupal is a registered trademark of Dries Buytaert.
https://api.drupal.org/api/drupal/core!lib!Drupal!Core!Database!Driver!pgsql!Schema.php/function/Schema::getFieldTypeMap/8.1.x