簡體   English   中英

SSIS-搜索字符串-腳本任務

[英]SSIS - Search string - Script task

我想知道是否可以使用腳本任務(C#)將查詢結果輸入為數組? 我發現了一個使用腳本任務但未將查詢結果的每個值賦給變量的代碼。

//Read list of Tables with Schema from Database
string query = "Select * From "+TableName;
SqlCommand cmd = new SqlCommand(query, myADONETConnection);
//myADONETConnection.Open();

DataTable d_table = new DataTable();
d_table.Load(cmd.ExecuteReader());
myADONETConnection.Close();



string FileFullPath = DestinationFolder +"\\"+ FileNamePart +"_" + datetime + FileExtension;

StreamWriter sw = null;
sw = new StreamWriter(FileFullPath, false);

// Write the Header Row to File
int ColumnCount = d_table.Columns.Count;

for (int ic = 0; ic < ColumnCount; ic++)
{
   sw.Write(d_table.Columns[ic]);
   if (ic < ColumnCount - 1)
   {
      sw.Write(FileDelimiter);
   }
}
sw.Write(sw.NewLine);

// Write All Rows to the File
foreach (DataRow dr in d_table.Rows)
{
   for (int ir = 0; ir < ColumnCount; ir++)
   {
       if (!Convert.IsDBNull(dr[ir]))
       {
           sw.Write(dr[ir].ToString());
       }
       if (ir < ColumnCount - 1)
       {
           sw.Write(FileDelimiter);
       }
    }
       sw.Write(sw.NewLine);
 }

謝謝。

基於以下評論:

基本上,我將進行查詢以返回多個列和行,並希望將每個數據分配給一個變量,例如Foreach循環容器。 此代碼是一個示例

我將假設您要在表中存儲查詢結果,並逐行循環結果,並在變量中分配列值。 然后,您應該使用Execute SQL Task執行查詢並將ResultSet存儲在類型System.Object的變量中,然后使用帶有ADO enumerator器的ForEach Loop Container在ResultSet (結果表)上 ForEach Loop Container

要獲取逐步指南,您可以參考以下鏈接之一:

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM