Udostępnij za pośrednictwem


Niejawna konwersja typu danych w wyrażeniach

Niejawna konwersja typu danych występuje, gdy wyrażenie modułu szacującego automatycznie konwertuje dane z jednego typu danych do innego.Na przykład jeśli smallint jest porównywany z int, smallint są niejawnie konwertowane na int przed wykonaniem porównania.

Tester wyrażenie nie może wykonać konwersji niejawnych danych, gdy argumenty i operandów niezgodnych typach danych.Ponadto Tester wyrażenie nie można niejawnie przekonwertować dowolną wartość wartość logiczna.Zamiast argumentów i argumentów należy jawnie przekonwertować za pomocą operator rzutowania.Aby uzyskać więcej informacji, zobacz Rzutowanie (wyrażenie SSIS): Konwersję typów danych SSIS.

Poniższy diagram przedstawia typ wyników konwersje niejawne operacje binarny.Przecięcia kolumna i wiersza w tej tabela jest typ wyniku operacji binarny z operandy lewego (Z) i prawej (do) typy.

Niejawna konwersja typów danych

Przecięcie podpisane i niepodpisane całkowitych jest całkowita, potencjalnie większy niż albo argumentu.

Operatory porównywania ciągów, daty, wartości logiczne i inne typy danych.Przed operator porównuje dwie wartości, Tester wyrażenie wykonuje pewne konwersje niejawne.Aby uzyskać więcej informacji, zobacz następujące tematy:

Funkcja używa pojedynczy argument zwraca wynik tego samego typu danych jako argument, z następującymi wyjątkami:

  • DZIEŃ, miesiąc i rok zaakceptować data i zwracają wynik całkowitą (DT_I4).

  • ISNULL akceptuje wyrażenie wszelkich SSIS Typ danych i zwraca wartość logiczna (DT_BOOL) wynik.

  • KWADRAT SQRT akceptuje wyrażenie liczbowe i zwraca wynik niecałkowity numeryczne (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 typu DT_DECIMAL, która zwraca wynik z typem danych DT_NUMERIC.