db_1とdb_2の2つのデータベースがあるとします。与えられた名前に従ってssisを使用してSQLオブジェクトを転送する
db_1に 'T1'という名前のテーブルがあります。SSISでsqlオブジェクトの名前を尋ねるパッケージが必要です.'T1 'を選択すると、データはdb_2に転送されます。
可能かどうかわかりません。
db_1とdb_2の2つのデータベースがあるとします。与えられた名前に従ってssisを使用してSQLオブジェクトを転送する
db_1に 'T1'という名前のテーブルがあります。SSISでsqlオブジェクトの名前を尋ねるパッケージが必要です.'T1 'を選択すると、データはdb_2に転送されます。
可能かどうかわかりません。
一般に、SSISは対話モードで使用するためのものではありません。すべてのユーザー入力は、構成設定または環境変数として、または他の表の値として導入されます。
また、SSISパッケージの外部で入力値をプロンプトしてキャプチャし、C#またはASP.Netまたは他の対話型プラットフォームでSSISパッケージを実行することもできます。
述べ、あなたが入力を要求し、それをを使用する必要がある場合は、それを行うための方法は、スクリプトコンポーネントでフォームをインスタンス化して表示することです。
パッケージ内のtableName
という適切なスコープで変数を作成します。次に、以下のコードを使用して(必要に応じて変更する)、変数の値をユーザが入力した値に設定します。最後に、コントロールフロー内の同じtableName
変数を使用して、データをコピーします。
System.Windows.Forms.Form frm = new Form();
TextBox = new TextBox();
Button submitButton = new Button();
public void Main()
{
submitButton.Text = "Enter source table name";
submitButton.Width = 300;
submitButton.Height = 80;
submitButton.Click += new EventHandler(submitButton_Click);
tableNameTextBox.Name = "Input";
frm.Controls.Add(tableNameTextBox);
frm.Controls.Add(submitButton);
frm.ShowDialog();
MessageBox.Show(Dts.Variables["tableName"].Value.ToString());
Dts.TaskResult = (int)ScriptResults.Success;
}
void submitButton_Click(object sender, EventArgs e)
{
Dts.Variables["tableName"].Value = tableNameTextBox.Text;
frm.Close();
}
あなたの主題と要件が異なるようです。あなたはオブジェクト(テーブル/ビュー/ Fn)またはデータを転送したいですか? – p2k