Mapeo de tipos de datos de las BD con DOCTRINE
A fin de realizar el mapeo de la base de datos a los objetos PHP se facilita la siguiente tabla que nos orientará sobre su implementación.
fuente:
http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html
Doctrine | PHP | Database vendor | ||
---|---|---|---|---|
Name | Version | Type | ||
smallint | integer |
MySQL | all | SMALLINT UNSIGNED [10] AUTO_INCREMENT [11] |
Drizzle | all | INT UNSIGNED [10] AUTO_INCREMENT [11] |
||
PostgreSQL | all | SMALLINT |
||
Oracle | all | NUMBER(5) |
||
SQL Server | all | SMALLINT IDENTITY [11] |
||
SQL Anywhere | all | UNSIGNED [10] SMALLINT IDENTITY [11] |
||
SQLite | all | INTEGER [16] |
||
integer | integer |
MySQL | all | INT UNSIGNED [10] AUTO_INCREMENT [11] |
Drizzle | ||||
PostgreSQL | all | INT [12] |
||
SERIAL [11] |
||||
Oracle | all | NUMBER(10) |
||
SQL Server | all | INT IDENTITY [11] |
||
SQL Anywhere | all | UNSIGNED [10] INT IDENTITY [11] |
||
SQLite | all | INTEGER [16] |
||
bigint | string
[8] |
MySQL | all | BIGINT UNSIGNED [10] AUTO_INCREMENT [11] |
Drizzle | ||||
PostgreSQL | all | BIGINT [12] |
||
BIGSERIAL [11] |
||||
Oracle | all | NUMBER(20) |
||
SQL Server | all | BIGINT IDENTITY [11] |
||
SQL Anywhere | all | UNSIGNED [10] BIGINT IDENTITY [11] |
||
SQLite | all | INTEGER [16] |
||
decimal [7] | string
[9] |
MySQL | all | NUMERIC(p, s) UNSIGNED [10] |
PostgreSQL | all | NUMERIC(p, s) |
||
Oracle | ||||
SQL Server | ||||
SQL Anywhere | ||||
SQLite | ||||
Drizzle | ||||
float | float |
MySQL | all | DOUBLE PRECISION UNSIGNED [10] |
PostgreSQL | all | DOUBLE PRECISION |
||
Oracle | ||||
SQL Server | ||||
SQL Anywhere | ||||
SQLite | ||||
Drizzle | ||||
string [2] [5] | string |
MySQL | all | VARCHAR(n) [3] |
PostgreSQL | ||||
SQL Anywhere | CHAR(n) [4] |
|||
SQLite | ||||
Drizzle | all | VARCHAR(n) |
||
Oracle | all | VARCHAR2(n) [3] |
||
CHAR(n) [4] |
||||
SQL Server | all | NVARCHAR(n) [3] |
||
NCHAR(n) [4] |
||||
text | string |
MySQL | all | TINYTEXT [17] |
TEXT [18] |
||||
MEDIUMTEXT [19] |
||||
LONGTEXT [20] |
||||
PostgreSQL | all | TEXT |
||
SQL Anywhere | ||||
Drizzle | ||||
Oracle | all | CLOB |
||
SQLite | ||||
SQL Server | all | VARCHAR(MAX) |
||
**guid ** | string |
MySQL | all | VARCHAR(255) [1] |
Oracle | ||||
SQLite | ||||
Drizzle | ||||
SQL Server | all | UNIQUEIDENTIFIER |
||
SQL Anywhere | ||||
PostgreSQL | all | UUID |
||
binary [2] [6] | resource |
MySQL | all | VARBINARY(n) [3] |
SQL Server | ||||
BINARY(n) [4] |
||||
SQL Anywhere | ||||
Drizzle | all | VARBINARY(n) |
||
Oracle | all | RAW(n) |
||
PostgreSQL | all | BYTEA [16] |
||
SQLite | all | BLOB [16] |
||
blob | resource |
MySQL | all | TINYBLOB [17] |
BLOB [18] |
||||
MEDIUMBLOB [19] |
||||
LONGBLOB [20] |
||||
Oracle | all | BLOB |
||
SQLite | ||||
Drizzle | ||||
SQL Server | all | VARBINARY(MAX) |
||
SQL Anywhere | all | LONG BINARY |
||
PostgreSQL | all | BYTEA |
||
boolean | boolean |
MySQL | all | TINYINT(1) |
PostgreSQL | all | BOOLEAN |
||
SQLite | ||||
Drizzle | ||||
SQL Server | all | BIT |
||
SQL Anywhere | ||||
Oracle | all | NUMBER(1) |
||
date | \DateTime |
MySQL | all | DATE |
PostgreSQL | ||||
Oracle | ||||
SQL Anywhere | ||||
SQLite | ||||
Drizzle | ||||
SQL Server | >= 2008 | |||
< 2008 | DATETIME [16] |
|||
datetime | \DateTime |
MySQL | all | DATETIME [13] |
Drizzle | TIMESTAMP [14] |
|||
SQL Server | all | DATETIME |
||
SQL Anywhere | ||||
SQLite | ||||
PostgreSQL | all | TIMESTAMP(0) WITHOUT TIME ZONE |
||
Oracle | all | TIMESTAMP(0) |
||
datetimetz | \DateTime |
MySQL | all | DATETIME [15] [16] |
Drizzle | ||||
SQLite | ||||
SQL Server | < 2008 | |||
>= 2008 | DATETIMEOFFSET(6) |
|||
PostgreSQL | all | TIMESTAMP(0) WITH TIME ZONE |
||
Oracle | ||||
SQL Anywhere | < 12 | DATETIME [15] [16] |
||
>= 12 | TIMESTAMP WITH TIME ZONE |
|||
time | \DateTime |
MySQL | all | TIME |
SQL Anywhere | ||||
SQLite | ||||
Drizzle | ||||
PostgreSQL | all | TIME(0) WITHOUT TIME ZONE |
||
Oracle | all | DATE [16] |
||
SQL Server | < 2008 | DATETIME [16] |
||
>= 2008 | TIME(0) |
|||
array [1] | array |
MySQL | all | TINYTEXT [17] |
simple array [1] | TEXT [18] |
|||
MEDIUMTEXT [19] |
||||
LONGTEXT [20] |
||||
PostgreSQL | all | TEXT |
||
SQL Anywhere | ||||
Drizzle | ||||
Oracle | all | CLOB |
||
SQLite | ||||
SQL Server | all | VARCHAR(MAX) |
||
json_array | array |
MySQL [1] | all | TINYTEXT [17] |
TEXT [18] |
||||
MEDIUMTEXT [19] |
||||
LONGTEXT [20] |
||||
PostgreSQL | >= 9.2 | JSON |
||
< 9.2 | TEXT [1] |
|||
SQL Anywhere | all | |||
Drizzle | ||||
Oracle | all | CLOB [1] |
||
SQLite | ||||
SQL Server | all | VARCHAR(MAX) [1] |
||
object [1] | object |
MySQL | all | TINYTEXT [17] |
TEXT [18] |
||||
MEDIUMTEXT [19] |
||||
LONGTEXT [20] |
||||
PostgreSQL | all | TEXT |
||
SQL Anywhere | ||||
Drizzle | ||||
Oracle | all | CLOB |
||
SQLite | ||||
SQL Server | all | VARCHAR(MAX) |
http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html
Comentarios
Publicar un comentario