我正在處理SQL服務器監視項目。在這我想從機器上安裝的所有SQL Server實例中獲取數據。爲此,我編寫了一個CLR存儲過程,其中數據來自兩個不同的SqlDataReader對象,我想合併這兩個數據對象。如何合併/合併兩個SqlDataReader對象
是否可以合併兩個SQLdatareader對象?
以下是我現在面臨這個問題的情況:
SqlConnection conn = new SqlConnection("ConnectionSting of 1st SQLServerInstance")
string query = "select dbid,uid,cpu from [master].[sys].sysprocesses";
SqlCommand SelectCmmand = new SqlCommand(query, conn);
SqlDataReader rd1;
conn.Open();
rd1 = SelectCmmand.ExecuteReader();
conn.Close();
conn = new SqlConnection("ConnectionSting of 2nd SQLServerInstance")
SqlCommand SelectCmmand = new SqlCommand(query, conn);
SqlDataReader rd2;
conn.Open();
rd2 = SelectCmmand.ExecuteReader();
conn.Close();
SqlPipe sp;
sp = SqlContext.Pipe;
sp.Send(?????);
現在,sp.Send(??)方法要SqlDataReader對象作爲參數,我想送兩個不同獲取上述數據ConnectionString的。
那麼,我應該如何合併/組合rd1和rd2?
像這樣SqlContext.Pipe.SendResultsRow(); –
是的,我們可以逐行發送,但這會影響性能....感謝您的回覆 – Darshan