Bagikan melalui


Bekerja dengan Jenis Data di Aliran Data

Berlaku untuk: Integration Runtime SSIS SQL Server di Azure Data Factory

Saat mengembangkan komponen aliran data kustom di Layanan Integrasi, Anda bekerja terus-menerus dengan jenis data, menyalin data ke dalam dan ke luar buffer aliran data dan mengubah nilai. Informasi dalam topik ini membantu Anda memilih jenis data Layanan Integrasi yang benar, dan menggunakan metode yang benar saat bekerja dengannya.

Menyisipkan Data ke dalam Aliran Data

Kelas ini PipelineBuffer menyediakan serangkaian metode Set untuk menyalin data ke dalam kolom buffer, dan serangkaian metode Get yang sesuai untuk mengambil data dari kolom buffer. Tabel berikut ini memperlihatkan kepada Anda metode mana yang akan digunakan dengan setiap jenis data Layanan Integrasi.

Atur Metode yang akan digunakan dengan Tipe Data

Tabel berikut ini mencantumkan tipe data di kolom pertama, lalu mencantumkan metode Set dan Get terkait.

Jenis Data Atur Metode Dapatkan Metode
DT_BOOL SetBoolean GetBoolean
DT_BYTES SetBytes GetBytes
DT_CY SetDecimal GetDecimal
DT_DATE SetDateTime GetDateTime
DT_DBDATE SetDate GetDate
DT_DBTIME SetTime GetTime
DT_DBTIME2 SetTime GetTime
DT_DBTIMESTAMP SetDateTime GetDateTime
DT_DBTIMESTAMP2 SetDateTime GetDateTime
DT_DBTIMESTAMPOFFSET SetDateTimeOffset GetDateTimeOffset
DT_DECIMAL SetDecimal GetDecimal
DT_FILETIME SetDateTime GetDateTime
DT_GUID SetGuid GetGuid
DT_I1 SetSByte GetSByte
DT_I2 SetInt16 GetInt16
DT_I4 SetInt32 GetInt32
DT_I8 SetInt64 GetInt64
DT_IMAGE AddBlobData atau AddBlobData GetBlobData
DT_NTEXT AddBlobData atau AddBlobData GetBlobData
DT_NULL SetNull Tidak ada metode Get yang berlaku untuk jenis data ini.
DT_NUMERIC SetDecimal GetDecimal
DT_R4 SetSingle GetSingle
DT_R8 SetDouble GetDouble
DT_STR SetString GetString
DT_TEXT AddBlobData atau AddBlobData GetBlobData
DT_UI1 SetByte GetByte
DT_UI2 SetUInt16 GetUInt16
DT_UI4 SetUInt32 GetUInt32
DT_UI8 SetUInt64 GetUInt64
DT_WSTR SetString GetString

Jenis Data yang Digunakan dengan Metode Set

Atur Metode Jenis Data
AddBlobData atau AddBlobData DT_IMAGE, DT_NTEXT, atau DT_TEXT
SetBoolean DT_BOOL
SetByte DT_UI1
SetBytes DT_BYTES
SetDate DT_DBDATE
SetDateTime DT_DATE, DT_DBTIMESTAMP, DT_DBTIMESTAMP2, atau DT_FILETIME
SetDateTimeOffset DT_DBTIMESTAMPOFFSET
SetDecimal DT_CY, DT_DECIMAL, atau DT_NUMERIC
SetDouble DT_R8
SetGuid DT_GUID
SetInt16 DT_I2
SetInt32 DT_I4
SetInt64 DT_I8
SetNull DT_NULL
SetSByte DT_I1
SetSingle DT_R4
SetString DT_STR atau DT_WSTR
SetTime DT_DBTIME atau DT_DBTIME2
SetUInt16 DT_UI2
SetUInt32 DT_UI4
SetUInt64 DT_UI8

Memetakan Jenis Data dalam Aliran Data

Saat memindahkan data dari sumber melalui transformasi ke tujuan, komponen aliran data terkadang harus mengonversi jenis data antara jenis SQL Server Integration Services yang ditentukan dalam DataType enumerasi dan jenis data terkelola microsoft .NET Framework yang ditentukan dalam namespace layanan Sistem. Selain itu, komponen terkadang harus mengonversi satu jenis data Layanan Integrasi ke jenis lain sebelum jenis tersebut dapat dikonversi ke jenis terkelola.

Catatan

File pemetaan dalam format XML yang diinstal secara default ke C:\Program Files\Microsoft SQL Server\130\DTS\MappingFiles tidak terkait dengan pemetaan tipe data yang dibahas dalam topik ini. File-file ini memetakan jenis data dari satu versi database atau sistem ke versi lain (misalnya, dari SQL Server ke Oracle), dan hanya digunakan oleh Wizard Impor dan Ekspor SQL Server. Untuk informasi selengkapnya tentang file pemetaan ini, lihat Wizard Impor dan Ekspor SQL Server.

Pemetaan antara Layanan Integrasi dan Jenis Data Terkelola

Metode BufferTypeToDataRecordType dan DataRecordTypeToBufferType memetakan jenis data Layanan Integrasi ke jenis data terkelola.

Perhatian

Pengembang harus menggunakan metode PipelineComponent kelas ini dengan hati-hati, dan mungkin ingin membuat kode metode pemetaan jenis data mereka sendiri yang lebih cocok dengan kebutuhan unik komponen kustom mereka. Metode yang ada tidak mempertimbangkan presisi atau skala numerik, atau properti lain yang terkait erat dengan jenis data itu sendiri. Microsoft dapat mengubah atau menghapus metode ini, atau mengubah pemetaan yang mereka lakukan, dalam versi Layanan Integrasi yang akan datang.

Tabel berikut ini mencantumkan BufferTypeToDataRecordType bagaimana metode dan DataRecordTypeToBufferType memetakan berbagai jenis data Layanan Integrasi ke jenis data terkelola.

Tipe Data Layanan Integrasi Peta ke Tipe Data Terkelola ini
DT_WSTR System.String
DT_BYTES Array of System.Byte
DT_DBTIMESTAMP System.DateTime
DT_DBTIMESTAMP2 System.DateTime
DT_DBTIMESTAMPOFFSET System.DateTimeOffset
DT_DBDATE System.DateTime
DT_DBTIME System.TimeSpan
DT_DBTIME2 System.TimeSpan
DT_DATE System.DateTime
DT_FILETIME System.DateTime
DT_NUMERIC System.Decimal
DT_GUID System.Guid
DT_I1 System.SByte
DT_I2 System.Int16
DT_I4 System.Int32
DT_I8 System.Int64
DT_BOOL System.Boolean
DT_R4 System.Single
DT_R8 System.Double
DT_UI1 System.Byte
DT_UI2 System.UInt16
DT_UI4 System.UInt32
DT_UI8 System.UInt64

Memetakan Jenis Data Layanan Integrasi agar Pas dengan Jenis Data Terkelola

Terkadang komponen aliran data juga harus mengonversi satu jenis data Layanan Integrasi ke jenis lain sebelum jenis tersebut dapat dikonversi ke jenis terkelola. Kelas ConvertBufferDataTypeToFitManaged metode memetakan jenis data Layanan Integrasi ke jenis data Layanan Integrasi lainnya yang kemudian dapat dipetakan ke jenis data terkelola dengan menggunakan BufferTypeToDataRecordType metode .

Perhatian

Pengembang harus menggunakan metode PipelineComponent kelas ini dengan hati-hati, dan mungkin ingin membuat kode metode pemetaan jenis data mereka sendiri yang lebih cocok dengan kebutuhan unik komponen kustom mereka. Metode yang ada tidak mempertimbangkan presisi atau skala numerik, atau properti lain yang terkait erat dengan jenis data itu sendiri. Microsoft dapat mengubah atau menghapus metode ini, atau mengubah pemetaan yang mereka lakukan, dalam versi Layanan Integrasi yang akan datang.

Tabel berikut ini mencantumkan ConvertBufferDataTypeToFitManaged cara metode memetakan jenis data Layanan Integrasi ke jenis data Layanan Integrasi lainnya.

Jenis Data Layanan Integrasi Asli Memetakan ke Jenis Data Layanan Integrasi ini
DT_DECIMAL DT_NUMERIC
DT_CY DT_NUMERIC
DT_DATE DT_DBTIMESTAMP
DT_DBDATE DT_DBTIMESTAMP
DT_FILETIME DT_DBTIMESTAMP
DT_DBTIMESTAMP2 DT_DBTIMESTAMP
DT_DBTIME DT_DBTIME2
DT_BOOL DT_I4
DT_TEXT DT_WSTR
DT_NTEXT DT_WSTR
DT_STR DT_WSTR
DT_IMAGE DT_BYTES

Catatan

Metode ConvertBufferDataTypeToFitManaged ini tidak mengembalikan nilai untuk jenis data DT_DBTIMESTAMPOFFSET, dan UnsupportedBufferDataTypeException terjadi. Anda harus mengonversi jenis data DT_DBTIMESTAMPOFFSET ke salah satu jenis data tanggal/waktu Layanan Integrasi yang dapat dipetakan ke jenis data terkelola. Untuk daftar jenis data tanggal/waktu Layanan Integrasi yang dapat dipetakan ke jenis data terkelola, lihat tabel di bagian sebelumnya, "Pemetaan antara Layanan Integrasi dan Jenis Data Terkelola." Untuk informasi tentang mengonversi jenis data, lihat Jenis Data Layanan Integrasi.

Lihat juga

BufferTypeToDataRecordType
DataRecordTypeToBufferType
ConvertBufferDataTypeToFitManaged
Jenis Data SSIS