Obsługiwane typy danych
Następująca tabela pokazuje obsługiwane typy danych źródłowych MySQL oraz ich domyślne mapowanie na typy danych bramy Brama danych ruchu danych.
Podczas replikowania danych do obiektu docelowego opartego na MySQL typy danych źródłowych i docelowych są takie same oprócz wyjątków opisanych w sekcji Replikacja jednorodna.
Aby uzyskać informacje o tym, jak wyświetlać typ danych mapowanych w miejscu docelowym, zobacz sekcję omawiającą łącznik używanego miejsca docelowego.
Typy danych MySQL | Typy danych Brama danych ruchu danych |
---|---|
INT |
INT4 |
BIGINT |
INT8 |
MEDIUMINT |
INT4 |
TINYINT |
INT1 |
SMALLINT | INT2 |
UNSIGNED TINYINT | UINT1 |
UNSIGNED SMALLINT | UINT2 |
UNSIGNED MEDIUMINT | UINT4 |
UNSIGNED INT | UINT4 |
UNSIGNED BIGINT | UINT8 |
DECIMAL (10) |
NUMERIC (10,0) |
BINARY |
BYTES (1) |
BIT |
BOOLEAN |
BIT (64) |
BYTES (8) |
BLOB |
BYTES (65535) |
LONGBLOB |
BLOB |
MEDIUMBLOB |
BLOB |
TINYBLOB |
BYTES (255) |
DATE |
DATE |
DATETIME Informacja
Typ DATETIME bez wartości w nawiasie jest replikowany bez milisekund, natomiast DATETIME z wartością 1-5, np. DATETIME(5), jest replikowany z milisekundami. Informacja
W przypadku operacji umieszczanie kolumny DATETIME czas w miejscu docelowym pozostaje taki sam (tzn. nie jest konwertowany na UTC). |
DATETIME |
TIME |
STRING |
TIMESTAMP Informacja
W przypadku operacji umieszczanie kolumny TIMESTAMP czas jest konwertowany na UTC w miejscu docelowym. |
DATETIME |
YEAR |
INT2 |
DOUBLE |
REAL8 |
FLOAT Jeśli wartości FLOAT nie mieszczą się w zakresie określonym poniżej, użyj transformacji, aby zamapować FLOAT na STRING. Wyjaśnienie, jak to zrobić, zawiera temat Tworzenie reguł przekształcania zestawów danych. Obsługiwany zakres FLOAT: - 1.79E+308 do -2.23E-308, 0 oraz 2.23E-308 do 1.79E+308 |
REAL (DOUBLE) |
*VARCHAR (45) |
WSTRING (45) |
*VARCHAR (2000) |
WSTRING (2000) |
*VARCHAR (4000) |
WSTRING (4000) |
VARBINARY (4000) |
BYTES (4000) |
VARBINARY (2000) |
BYTES (2000) |
*CHAR |
WSTRING |
*TEXT |
WSTRING (65535) |
*LONGTEXT |
NCLOB |
*MEDIUMTEXT |
NCLOB |
*TINYTEXT |
WSTRING (255) |
GEOMETRY |
BLOB |
POINT |
BLOB |
LINESTRING |
BLOB |
POLYGON |
BLOB |
MULTIPOINT |
BLOB |
MULTILINESTRING |
BLOB |
MULTIPOLYGON |
BLOB |
GEOMETRYCOLLECTION |
BLOB |
ENUM |
WSTRING (Length) Gdzie „Length” jest najdłuższą wartością w ENUM. |
SET |
WSTRING (Length) Gdzie „Length” to suma wszystkich wartości w SET, łącznie z przecinkami. |
JSON |
CLOB |
Jeśli typy danych DATETIME i TIMESTAMP zostały określone z wartością „zero” (tj. 0000-00-00), należy upewnić się, że docelowa baza danych w zadaniu umieszczanie obsługuje wartości „zero” dla typów danych DATETIME i TIMESTAMP. Jeśli te wartości nie są obsługiwane, możesz użyć transformacji, aby określić obsługiwaną wartość (np. 1970). W przeciwnym razie zostaną one zapisane w miejscu docelowym jako null.