1 schema.inc | public DatabaseSchema_mysql::getFieldTypeMap() |
Returns a mapping of Backdrop schema field names to DB-native field types.
Because different field types do not map 1:1 between databases, Backdrop has its own normalized field type names. This function returns a driver-specific mapping table from Backdrop names to the native names for each database.
Return value
array: An array of Schema API field types to driver-specific field types.
Overrides DatabaseSchema::getFieldTypeMap
File
- core/
includes/ database/ mysql/ schema.inc, line 216 - Database schema code for MySQL database servers.
Class
Code
public 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 backdrop_static as its value never changes.
static $map = array(
'varchar:normal' => 'VARCHAR',
'char:normal' => 'CHAR',
'text:tiny' => 'TINYTEXT',
'text:small' => 'TINYTEXT',
'text:medium' => 'MEDIUMTEXT',
'text:big' => 'LONGTEXT',
'text:normal' => 'TEXT',
'serial:tiny' => 'TINYINT',
'serial:small' => 'SMALLINT',
'serial:medium' => 'MEDIUMINT',
'serial:big' => 'BIGINT',
'serial:normal' => 'INT',
'int:tiny' => 'TINYINT',
'int:small' => 'SMALLINT',
'int:medium' => 'MEDIUMINT',
'int:big' => 'BIGINT',
'int:normal' => 'INT',
'float:tiny' => 'FLOAT',
'float:small' => 'FLOAT',
'float:medium' => 'FLOAT',
'float:big' => 'DOUBLE',
'float:normal' => 'FLOAT',
'numeric:normal' => 'DECIMAL',
'blob:big' => 'LONGBLOB',
'blob:normal' => 'BLOB',
'date:normal' => 'DATE',
'datetime:normal' => 'DATETIME',
'time:normal' => 'TIME',
);
return $map;
}