Udostępnij za pośrednictwem


Rzutowanie (wyrażenie SSIS): Konwersję typów danych SSIS

Jawnie konwertuje wyrażenie z jednego typu danych na inny typ danych.Operatorze rzutowania można także funkcja jako operator obcinania.

Składnia


(type_spec) expression
        

Argumenty

  • type_spec
    Jest prawidłowy SSIS typu danych.

  • expression
    Jest to poprawne wyrażenie.

Typy wyników

Typ danych type_spec.Aby uzyskać więcej informacji, zobacz Typy danych usług integracji.

Uwagi

Na poniższym diagramie przedstawiono czynności prawnych rzutowania.

Legalne i nielegalne rzutowania między typami danych

Rzutowanie do niektórych typów danych wymaga parametrów.W poniższej tabela przedstawiono te typy danych i ich parametrów.

Typ danych

Parametr

Przykład

DT_STR

charcount

codepage

(DT_STR, 30, 1252) posługując się miarką 30 bajtów lub 30 znaków pojedynczego DT_STR typ danych przy użyciu strona kodowa 1252.

DT_WSTR

Charcount

(DT_WSTR, 20) posługując się miarką par 20 bajtów lub wpisz 20 znaków Unicode do DT_WSTR danych.

DT_BYTES

Bytecount

(DT_BYTES, 50) posługując się miarką 50 bajtów DT_BYTES typ danych.

DT_DECIMAL

Scale

Wartość liczbowa DT_DECIMAL typ danych przy użyciu skali 2 posługując się miarką (DT_DECIMAL 2).

DT_NUMERIC

Precision

Scale

Wartość liczbowa, typ danych DT_NUMERIC korzystanie z dokładnością do 10 i skala 3 posługując się miarką (DT_NUMERIC, 10, 3).

DT_TEXT

Codepage

(DT_TEXT, 1252) posługując się miarką wartość DT_TEXT typ danych przy użyciu strona kodowa 1252.

Jeśli ciąg jest oddanych do DT_DATE lub na odwrót, ustawienia regionalne transformacja jest używany.Jednakże data jest w formacie ISO RRRR-MM-DD, niezależnie od tego, czy preferencji ustawienia regionalne w formacie ISO.

Ostrzeżenie

Aby przekonwertować ciąg na data typ danych, innych niż DT_data, zobacz Typy danych usług integracji.

Jeśli strona kodowa jest strona kodowa znaków wielobajtowych, liczba bajtów i znaki mogą się różnić.Rzutowanie z DT_WSTR na DT_STR z tym samym charcount wartości może spowodować obcięcie końcowe znaki w ciąg przekonwertowane.Jeśli wystarczającą ilość miejsca jest dostępna kolumna tabela docelowej zestaw wartość charcount parametru, aby odzwierciedlać liczbę bajtów, które wymaga strona kodowa wielobajtowych.Na przykład, jeżeli oddanych danych znakowych przy użyciu strona kodowa 936 DT_STR typ danych, należy zestaw charcount wartości maksymalnie dwa razy większa niż liczba znaków, które oczekują danych zawierają; Jeżeli oddanych danych znakowych przy użyciu strona kodowa UTF-8, należy zestaw charcount do czterech razy większą wartość.

Aby uzyskać więcej informacji o strukturze typu danych Data, zobacz Typy danych usług integracji.

Przykłady konwersji typów danych SSIS

W tym przykładzie posługując się miarką liczbą całkowitą.

(DT_I4) 3.57

W tym przykładzie posługując się miarką całkowitą ciąg znaków przy użyciu strona kodowa 1252.

(DT_STR,1,1252)5

W tym przykładzie posługując się miarką trzyliterowy ciąg znaków dwubajtowych.

(DT_WSTR,3)"Cat"

W tym przykładzie posługując się miarką całkowitą dziesiętnym o skali.

(DT_DECIMAl,2)500

W tym przykładzie posługując się miarką całkowitą liczbową z dokładnością do siedmiu i skali trzech.

(DT_NUMERIC,7,3)4000

W tym przykładzie posługując się miarką wartości w Imię kolumna zdefiniowane za pomocą nvarchar typ danych oraz długości 50 do ciąg znaków przy użyciu strona kodowa 1252.

(DT_STR,50,1252)FirstName

Posługując się w tym przykładzie miarką literał ciąg znaków "True" wartość logiczna.

(DT_BOOL)"True"

W tym przykładzie posługując się miarką ciąg literału DT_DBDATE.

(DT_DBDATE) "1999-10-11"

W tym przykładzie posługując się miarką ciąg literału DT_DBTIME2 typ danych, który używa 5 cyfr dla ułamków sekund.(DT_DBTIME2 typ danych może mieć między 0 a 7 cyfr określony dla ułamków sekund).

(DT_DBTIME2, 5) "16:34:52.12345"

W tym przykładzie posługując się miarką ciąg literału DT_DBTIMESTAMP2 typ danych, który używa 4 cyfry dla ułamków sekund.(DT_DBTIMESTAMP2 typ danych może mieć między 0 a 7 cyfr określony dla ułamków sekund).

(DT_DBTIMESTAMP2, 4) "1999-10-11 16:34:52.1234"

W tym przykładzie posługując się miarką ciąg literału DT_DBTIMESTAMPOFFSET typ danych, który używa 7 cyfr dla ułamków sekund.(DT_DBTIMESTAMPOFFSET typecan danych jest między 0 a 7 cyfr określony dla ułamków sekund).

(DT_DBTIMESTAMPOFFSET, 7) "1999-10-11 16:34:52.1234567 + 5:35"