Bagikan melalui


Variabel Integration Services (SSIS)

Variabel menyimpan nilai yang dapat digunakan paket SQL Server Integration Services dan kontainer, tugas, dan penanganan aktivitasnya pada durasi. Skrip dalam tugas Skrip dan komponen Skrip juga dapat menggunakan variabel. Batasan prioritas yang mengurutkan tugas dan kontainer ke dalam alur kerja dapat menggunakan variabel saat definisi batasannya menyertakan ekspresi.

Anda dapat menggunakan variabel dalam paket Layanan Integrasi untuk tujuan berikut:

  • Memperbarui properti elemen paket pada durasi. Misalnya, Anda dapat secara dinamis mengatur jumlah executable bersamaan yang diizinkan oleh kontainer Foreach Loop.

  • Menyertakan tabel pencarian dalam memori. Misalnya, paket dapat menjalankan tugas Jalankan SQL yang memuat variabel dengan nilai data.

  • Memuat variabel dengan nilai data lalu menggunakannya untuk menentukan kondisi pencarian dalam klausa WHERE. Misalnya, skrip dalam tugas Skrip dapat memperbarui nilai variabel yang digunakan oleh pernyataan Transact-SQL dalam tugas Jalankan SQL.

  • Memuat variabel dengan bilangan bulat lalu menggunakan nilai untuk mengontrol perulangan dalam alur kontrol paket. Misalnya, Anda dapat menggunakan variabel dalam ekspresi evaluasi kontainer For Loop untuk mengontrol iterasi.

  • Mengisi nilai parameter untuk pernyataan Transact-SQL pada durasi. Misalnya, paket dapat menjalankan tugas Jalankan SQL lalu menggunakan variabel untuk mengatur parameter secara dinamis dalam pernyataan Transact-SQL.

  • Membangun ekspresi yang menyertakan nilai variabel. Misalnya, transformasi Kolom Turunan dapat mengisi kolom dengan hasil yang diperoleh dengan mengalikan nilai variabel dengan nilai kolom.

Variabel Sistem dan User-Defined

Integration Services mendukung dua jenis variabel: variabel dan variabel sistem yang ditentukan pengguna. Variabel yang ditentukan pengguna ditentukan oleh pengembang paket, dan variabel sistem ditentukan oleh Integration Services. Anda dapat membuat variabel yang ditentukan pengguna sebanyak yang diperlukan paket, tetapi Anda tidak dapat membuat variabel sistem tambahan.

Semua variables-system dan user-defined-dapat digunakan dalam pengikatan parameter yang digunakan tugas Execute SQL untuk memetakan variabel ke parameter dalam pernyataan SQL. Untuk informasi selengkapnya, lihat Menjalankan Tugas dan Parameter SQLdan Mengembalikan Kode dalam Tugas Jalankan SQL.

Catatan

Nama variabel yang ditentukan pengguna dan sistem peka huruf besar/kecil.

Anda dapat membuat variabel yang ditentukan pengguna untuk semua jenis kontainer Integration Services: paket, kontainer Foreach Loop, kontainer For Loop, kontainer Urutan, tugas, dan penanganan aktivitas. Variabel yang ditentukan pengguna adalah anggota koleksi Variabel kontainer.

Jika Anda membuat paket menggunakan SSIS Designer, Anda dapat melihat anggota koleksi Variabel di folder Variabel pada tab Penjelajah Paket dari Designer SSIS. Folder mencantumkan variabel dan variabel sistem yang ditentukan pengguna.

Anda dapat mengonfigurasi variabel yang ditentukan pengguna dengan cara berikut:

  • Berikan nama dan deskripsi untuk variabel .

  • Tentukan namespace untuk variabel.

  • Menunjukkan apakah variabel menaikkan peristiwa saat nilainya berubah.

  • Menunjukkan apakah variabel bersifat baca-saja atau baca/tulis.

  • Gunakan hasil evaluasi ekspresi untuk mengatur nilai variabel.

  • Buat variabel dalam cakupan paket atau objek paket seperti tugas.

  • Tentukan nilai dan jenis data variabel.

Satu-satunya opsi yang dapat dikonfigurasi pada variabel sistem adalah menentukan apakah mereka menaikkan peristiwa ketika mereka mengubah nilai.

Set variabel sistem yang berbeda tersedia untuk berbagai jenis kontainer. Untuk informasi selengkapnya tentang variabel sistem yang digunakan oleh paket dan elemennya, lihat Variabel Sistem.

Untuk informasi selengkapnya tentang skenario penggunaan kehidupan nyata untuk variabel, lihat Menggunakan Variabel dalam Paket.

Properti Variabel

Anda dapat mengonfigurasi variabel yang ditentukan pengguna dengan mengatur properti berikut di jendela Variabel atau jendela Properti . Properti tertentu hanya tersedia di jendela Properti.

Catatan

Satu-satunya opsi yang dapat dikonfigurasi pada variabel sistem adalah menentukan apakah mereka menaikkan peristiwa ketika mereka mengubah nilai.

Deskripsi
Menentukan deskripsi variabel.

EvaluateAsExpression
Saat properti diatur ke True, ekspresi yang disediakan digunakan untuk mengatur nilai variabel.

Ekspresi
Menentukan ekspresi yang ditetapkan ke variabel.

Nama
Menentukan nama variabel.

Ruang nama
Layanan Integrasi menyediakan dua namespace layanan, Pengguna dan Sistem. Secara default, variabel kustom berada di namespace pengguna , dan variabel sistem berada di namespace layanan Sistem . Anda dapat membuat namespace layanan tambahan untuk variabel yang ditentukan pengguna dan mengubah nama namespace layanan Pengguna , tetapi Anda tidak dapat mengubah nama namespace layanan Sistem , menambahkan variabel ke namespace layanan Sistem , atau menetapkan variabel sistem ke namespace layanan yang berbeda.

RaiseChangedEvent
Saat properti diatur ke True, OnVariableValueChanged peristiwa dinaikkan saat variabel berubah nilai.

Baca Saja
Ketika properti diatur ke False, variabel adalah read\write.

Cakupan

Catatan

Anda hanya dapat mengubah pengaturan properti ini dengan mengklik Pindahkan Variabel di jendela Variabel .

Variabel dibuat dalam cakupan paket atau dalam cakupan kontainer, tugas, atau penanganan aktivitas dalam paket. Karena kontainer paket berada di bagian atas hierarki kontainer, variabel dengan fungsi cakupan paket seperti variabel global dan dapat digunakan oleh semua kontainer dalam paket. Demikian pula, variabel yang ditentukan dalam cakupan kontainer seperti kontainer For Loop dapat digunakan oleh semua tugas atau kontainer dalam kontainer For Loop.

Jika paket menjalankan paket lain dengan menggunakan tugas Jalankan Paket, variabel yang ditentukan dalam lingkup paket panggilan atau tugas Jalankan Paket dapat tersedia untuk paket yang dipanggil dengan menggunakan jenis konfigurasi Variabel Paket Induk. Untuk informasi selengkapnya, lihat Konfigurasi Paket.

SertakanInDebugDump
Menunjukkan apakah nilai variabel disertakan dalam file dump debug.

Untuk variabel dan variabel sistem yang ditentukan pengguna, nilai default untuk opsi InclueInDebugDump adalah true.

Namun, untuk variabel yang ditentukan pengguna, sistem mengatur ulang opsi IncludeInDebugDump ke false saat kondisi berikut terpenuhi:

  • Jika properti variabel EvaluateAsExpression diatur ke true, sistem mengatur ulang opsi IncludeInDebugDump ke false.

    Untuk menyertakan teks ekspresi sebagai nilai variabel dalam file cadangan debug, atur opsi IncludeInDebugDump ke true.

  • Jika jenis data variabel diubah menjadi string, sistem mengatur ulang opsi IncludeInDebugDump ke false.

Saat sistem mengatur ulang opsi IncludeInDebugDump ke false, ini mungkin menimpa nilai yang dipilih oleh pengguna.

Nilai
Nilai variabel yang ditentukan pengguna dapat berupa harfiah atau ekspresi. Variabel menyertakan opsi untuk mengatur nilai variabel dan jenis data nilai. Dua properti harus kompatibel: misalnya, penggunaan nilai string bersama dengan jenis data bilangan bulat tidak valid.

Jika variabel dikonfigurasi untuk dievaluasi sebagai ekspresi, Anda harus memberikan ekspresi. Pada durasi, ekspresi dievaluasi, dan variabel diatur ke hasil evaluasi. Misalnya, jika variabel menggunakan ekspresi DATEPART("month", GETDATE()) , nilai variabel adalah angka yang setara dengan bulan untuk tanggal saat ini. Ekspresi harus berupa ekspresi valid yang menggunakan sintaks tata bahasa ekspresi SSIS. Saat ekspresi digunakan dengan variabel, ekspresi dapat menggunakan literal dan operator dan fungsi yang disediakan tata bahasa ekspresi, tetapi ekspresi tidak dapat mereferensikan kolom dari aliran data dalam paket. Panjang maksimum ekspresi adalah 4000 karakter. Untuk informasi selengkapnya, lihat Ekspresi Integration Services (SSIS).

ValueType

Catatan

Nilai properti muncul di kolom Jenis data di jendela Variabel .

Menentukan jenis data nilai variabel.

Mengonfigurasi Variabel

Anda dapat mengatur properti melalui SSIS Designer atau secara terprogram.

Untuk informasi selengkapnya tentang properti yang bisa Anda atur di Designer SSIS, lihat Jendela Variabel.

Untuk mempelajari selengkapnya tentang properti variabel, dan untuk informasi selengkapnya tentang mengatur properti ini secara terprogram, lihat Variable.

Menambahkan, Menghapus, Mengubah Cakupan Variabel User-Defined dalam Paket

Mengatur Properti Variabel User-Defined

Menggunakan Nilai Variabel dan Parameter dalam Paket Anak

Memetakan Parameter Kueri ke Variabel dalam Komponen Aliran Data