Dengan perubahan ke konfigurasi paket pada 2008 dibandingkan dengan 2005 ketika saya menentukan / ConfigFile something.dtsConfig pada baris perintah, variabel yang ditentukan dalam paket menjaga nilai desain-waktu alih-alih menggunakan pengaturan dari file konfigurasi.
Saya tidak yakin saya mengerti BAGAIMANA untuk mendapatkan file konfigurasi eksternal untuk digunakan sama sekali. Saya telah membaca artikel yang mengatakan bahwa hanya konfigurasi desain-waktu yang ditetapkan akan menimpa beban file eksternal. Apakah ini berarti saya dapat mengubah variabel menjadi string kosong dan kemudian mereka akan ditimpa? Saya tidak dapat menghapus variabel sepenuhnya! Bagaimana dengan bilangan bulat?
Saya telah melihat artikel yang menyebutkan mematikan dengan menggunakan konfigurasi paket dalam paket.
Saya dapat menggunakan Editor Paket SSIS atau editor XML untuk mengubah jalur file konfigurasi dalam paket, dan kemudian akan menggunakan pengaturan file itu "terakhir" (terlepas dari opsi eksternal / ConfigFile), tetapi saya tidak ingin menjadi mengubah paket. Saya ingin satu paket dengan Test.dtsConfig dan Production.dtsConfig dan dapat bertukar bolak-balik tanpa mengubah paket.
Apa cara yang disarankan untuk melakukan ini sekarang?
sumber
Jawaban:
Anda harus mempertimbangkan bahwa ketika dijalankan oleh BIDS paket akan mengambil nilai variabel dari file konfigurasi terlebih dahulu, dan hanya jika file config tidak ada, itu akan melemparkan peringatan dan nilai akan diambil dari paket.
Sekarang, situasi di baris perintah agak berbeda. Anda dapat memiliki situasi berikut:
jalankan paket dalam cmd line tanpa memilih file config:
jalankan paket dalam cmd line tanpa memilih file config, tetapi dengan variabel yang diatur dalam panggilan:
jalankan paket dalam cmd line dengan file config baru (misalkan DEV sebagai gantinya Prod):
jalankan paket dalam cmd line dengan file konfigurasi baru dan pernyataan SET dalam panggilan:
Jadi, singkatnya, jika Anda ingin menggunakan file konfigurasi baru Anda harus mengganti nama / memindahkan yang lama dan memanggil paket dengan / configFile. Jika itu tidak cukup dan ingin mengganti bahkan file konfigurasi baru, maka gunakan variabel / SET. Atau Anda dapat mem-bypass file konfigurasi apa pun dan hanya menggunakan / SET pernyataan dalam panggilan batch.
Semoga itu akan menjelaskan kemungkinan Anda.
sumber