[英]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.