2014-06-23 201 views
0

嗨我試圖導出SQL Server查詢使用C#的Excel,我遇到了麻煩。將SQL Server查詢導出到Excel C#

這是我到目前爲止已經試過......

我不知道,我正確地使用這個代碼,並可以使用援助。

我收到該錯誤。

未將對象引用設置爲對象的實例。 (這不是一個問題重複)

更新:我現在固定不設置到對象的實例對象引用後receieve此錯誤:

的ExecuteReader:Connection屬性尚未初始化。

在y1.CommandText

String connectionString = ""; 
    connectionString = "REMOVED"; 
    String Filename = null; 
    y1 = new SqlCommand(); 
    y1.CommandText = @"Select * from products.products"; 


    SqlConnection conn = new SqlConnection(connectionString); 
    conn.Open(); 
    SqlDataReader dr = y1.ExecuteReader(); 

    using (System.IO.StreamWriter fs = new System.IO.StreamWriter(Filename)) 
    { 
     // Loop through the fields and add headers 
     for (int i = 0; i < dr.FieldCount; i++) 
     { 
      string name = dr.GetName(i); 
      if (name.Contains(",")) 
       name = "\"" + name + "\""; 

      fs.Write(name + ","); 
     } 
     fs.WriteLine(); 

     // Loop through the rows and output the data 
     while (dr.Read()) 
     { 
      for (int i = 0; i < dr.FieldCount; i++) 
      { 
       string value = dr[i].ToString(); 
       if (value.Contains(",")) 
        value = "\"" + value + "\""; 

       fs.Write(value + ","); 
      } 
      fs.WriteLine(); 
     } 

     fs.Close(); 
    } 
} 

再次感謝你。

+0

您正在嘗試創建對象之前,設置屬性('y1.CommandText =')('Y1前= new') –

+0

現在我得到ExecuteReader:連接屬性尚未初始化。在SqlDataReader上dr = y1.ExecuteReader(); – user3768157

+1

你還沒有設置命令。做一些使用'SQLCommand'和'SqlConnection'的研究,而不是把一些隨機的代碼位放在一起。 –

回答

0

移動線

Y1 =新的SqlCommand();

上述

y1.CommandText = @"Select * from products.products"; 

要設置爲一個對象的值初始化它

+0

現在我得到ExecuteReader:連接屬性尚未初始化。在SqlDataReader上dr = y1.ExecuteReader(); – user3768157