Niejawna konwersja typu danych w wyrażeniach
Niejawna konwersja typu danych występuje, gdy modułu szacującego wyrażenie automatycznie przekształca dane z jednego typu danych na inny.Na przykład jeśli smallint jest porównywany z int, smallint Domyślnie jest konwertowany na int przed wykonaniem porównania.
Modułu szacującego wyrażenie nie może wykonać konwersji niejawnych danych, wówczas, gdy argumentów i argumentów niezgodnych typów.Ponadto modułu szacującego wyrażenie nie można niejawnie przekonwertować wszystkie wartości wartością logiczną.Zamiast tego argumentów i argumentów należy jawnie przekonwertować za pomocą operator rzutowania.Aby uzyskać więcej informacji zobaczObsada (wyrażenia SSIS).
Poniższy diagram przedstawia typ wynik konwersji niejawnych BINARY operacji.Przecięcia kolumna i wiersza w tej tabela jest typ wyniku operacji plik binarny z argumenty po lewej stronie () i w prawo (aby) typów.
Punkt przecięcia podpisane i liczba całkowita bez znaku jest podpisana liczba całkowita, która potencjalnie większą niż argument albo.
Operatory porównywania ciągów, daty, wartości logiczne i inne typy danych.Przed operator porównuje dwie wartości, modułu szacującego wyrażenie wykonuje pewne konwersji niejawnych.Aby uzyskać więcej informacji, zobacz następujące tematy:
funkcja, która korzysta z pojedynczym argumentem zwraca wynik z takim samym typie danych jako argumentu, z następującymi wyjątkami:
DZIEŃ, miesiąc i rok zaakceptować data i zwracają wyniki liczby całkowitej (DT_I4).
ISNULL akceptuje wyrażenie wszelkich SSIS Typ danych i zwraca logiczny wynik (DT_BOOL).
SQUARE i SQRT zaakceptować wyrażenie liczbowe i zwracania wyniku Całka innych niż liczbowe (DT_R8).
Jeśli argumenty mieć dane tego samego typu, wynik jest tego typu.Jedynym wyjątkiem jest wynik operacji binarnych na dwóch wartości za pomocą DT_DECIMAL typu danych, która zwraca wynik o typie danych DT_NUMERIC.