Cast (SSIS ifade): SSIS veri türleri dönüştürme
Açıkça ifade için farklı veri türü bir veri türünden diğerine dönüştürür.Cast işleç bir kesme da işlev görebilir işleç.
Sözdizimi
(type_spec) expression
Bağımsız değişkenler
type_spec
Geçerli bir SSIS veri türü.expression
Geçerli bir ifade.
Açıklamalar
Aşağıdaki diyagramda, yasal cast operasyonları gösterir.
Bazı veri türlerine çevrim parametreleri gerektirir.Aşağıdaki tablo bu veri türleri ve bunların parametreleri listeler.
Veri türü |
Parameter |
Örnek |
---|---|---|
DT_STR |
charcount codepage |
1252 Kod sayfa kullanılarak dt_str veri türü için 30 tek karakter veya 30 bayt (dt_str, 30, 1252) çevirir. |
DT_WSTR |
Charcount |
20 Bayt çiftleri (dt_wstr, 20) bıraktığı veya dt_wstr verilere 20 Unicode karakter yazın. |
DT_BYTES |
Bytecount |
(dt_bytes, 50) 50 bayt dt_bytes veri türüne çevirir. |
DT_DECIMAL |
Scale |
(DT_DECIMAL, 2), 2 ölçeğini kullanarak DT_DECIMAL veri türü sayısal değerine çevirir. |
DT_NUMERIC |
Precision Scale |
(DT_NUMERIC, 10, 3), 10 'un bir duyarlık ve ölçeği 3 kullanarak DT_NUMERIC veri türü sayısal değerine çevirir. |
DT_TEXT |
Codepage |
1252 Kod sayfa kullanılarak dt_text veri türü için bir değer (dt_text, 1252) çevirir. |
Ne zaman bir dize bir dt_date, veya tam tersi şekilde artığını, yerel ayar ayar dönüştürme kullanılır.Ancak, tarih yerel ayar tercih ISO biçimi kullanıp bakılmaksızın yyyy-AA-GG ISO biçiminde olduğundan.
Not
dt_date dışındaki bir tarih veri türü bir dize dönüştürmek için bkz: Tümleştirme Hizmetleri veri türleri.
Çok baytlı karakter kod sayfa kod sayfa ise, bayt ve karakter sayısı farklı olabilir.Aynı bir dt_str için bir dt_wstr vuran charcount değeri neden kesilmesi son karakterleri dönüştürülmüş bir dize.Yeterli depolama hedef tablo sütununda varsa küme değeri charcount parametresini kullanarak çok baytlı kod sayfa gerektiren bayt sayısını yansıtır.Örneğin, karakter verileri 936 kod sayfa kullanılarak dt_str veri türü için artığını, gerekir küme charcount bir değere kadar iki kez büyük karakter sayısı olarak beklediğiniz verileri içerir; utf-8 kod sayfa kullanılarak bir karakter veri artığını, gerekir küme charcount en çok dört kat daha büyük bir değere.
Tarih veri türleri yapısı hakkında daha fazla bilgi için bkz: Tümleştirme Hizmetleri veri türleri.
SSIS veri türleri dönüştürme örnekleri
Bu örnek, sayısal bir değer bir tamsayı için çevirir.
(DT_I4) 3.57
Bu örnek, bir tamsayı bir karaktere bıraktığı dize 1252 kod sayfa kullanılarak.
(DT_STR,1,1252)5
Bu örnek, üç karakterli bıraktığı dize çift baytlı karakterler için.
(DT_WSTR,3)"Cat"
Bu örnekte, tam ölçekli bir iki ondalık sayıya çevirir.
(DT_DECIMAl,2)500
Bu örnekte, tam bir sayısal yedi, bir duyarlık ve ölçeği üç ile sayıya çevirir.
(DT_NUMERIC,7,3)4000
Bu örnek değerler bıraktığı ad ile tanımlanmış sütun, bir nvarchar veri türü ve uzunluğu bir karaktere 50 dize 1252 kod sayfa kullanılarak.
(DT_STR,50,1252)FirstName
Bu örnek dize "True" bıraktığı Boole olarak.
(DT_BOOL)"True"
Bu örnek, bir dize için dt_dbdate çevirir.
(DT_DBDATE) "1999-10-11"
Bu örnek, bir dize 5 basamak Kesirli saniye için kullandığı DT_DBTIME2 veri türüne çevirir.(DT_DBTIME2 veri türü 0 ve Kesirli saniye için belirtilen 7 basamak arasında olabilir).
(DT_DBTIME2, 5) "16:34:52.12345"
Bu örnek, bir dize 4 basamak Kesirli saniye için kullandığı DT_DBTIMESTAMP2 veri türüne çevirir.(DT_DBTIMESTAMP2 veri türü 0 ve Kesirli saniye için belirtilen 7 basamak arasında olabilir).
(DT_DBTIMESTAMP2, 4) "1999-10-11 16:34:52.1234"
Bu örnek, bir dize 7 basamak Kesirli saniye için kullandığı DT_DBTIMESTAMPOFFSET veri türüne çevirir.(DT_DBTIMESTAMPOFFSET veri typecan sahip 0 ve Kesirli saniye için belirtilen 7 basamak arasında.)
(DT_DBTIMESTAMPOFFSET, 7) "1999-10-11 16:34:52.1234567 + 5:35"
Ayrıca bkz.