次のいずれかを介して SSIS プロジェクト パラメーターを読み取る方法を示すオンライン ドキュメントが多数あります。
- Biml タグ
- SSIS C# スクリプト タスク
しかし、私はBimlScript 内の C# コードからそれを行う方法を見つけようとして 6 時間以上費やしました。確かに、私は Biml n00b なので、解決策を見つけられなかったのかもしれません。
私の Biml ('***' に置き換えられた機密データ):
<#@ template language="C#" #>
<#@ import namespace="System.Data" #>
<#@ import namespace="System.Data.OleDb" #>
<#
string connString = "Data Source=***;Provider=***;Persist Security Info=True;Location=***;uid=***;pwd=" + #>@[$Project::PW]<#;
OleDbConnection db2Conn = new OleDbConnection(connString);
string queryString = "SELECT * FROM SYSIBM.SYSTABLES WHERE DBNAME = '***' WITH UR";
OleDbCommand myCommand = new OleDbCommand(queryString);
myCommand.Connection = db2Conn;
db2Conn.Open();
myCommand.ExecuteReader();
db2Conn.Close();
#>
<Biml xmlns="http://schemas.varigence.com/biml.xsd">
<Packages>
<Package Name="DB2Test" />
</Packages>
</Biml>
これにより、次のエラーが発生します。
Operator '+' cannot be applied to operands of type 'string' and 'void'
これにより、プロジェクトパラメーターを取得する前に文字列連結が解決されると思います。
接続文字列にパスワードをハードコードすると、正常に機能することに注意してください。