如何将两个SQL Server表的比较保存到Excel文件?

那么我的问题是与Windows窗体,SQL Server和Excel有关。

我正在开发一个应用程序来比较SQL Server中两个表中的数据,并获得结果。 直到插入数据到SQL Server表和比较表的部分工作正常,现在我想将比较的结果保存到一个Excel文件。

我尝试了很多方法,但到目前为止失败了:)我正在给我的函数来执行SQL比较选项和帮助,并将结果保存到Excel中。

谢谢。

private void button2_Click(object sender, EventArgs e) { if(checkBox1.Checked) { SqlConnection sqlConnection1 = new SqlConnection(MyConString); SqlCommand cmd = new SqlCommand(); SqlDataReader reader; cmd.CommandText = "select Table1.Column from Table1 where Table1.Column1 not in (select Table2.Column2 from Table2 where Table2.Column2 = Table1.Column1)"; cmd.CommandType = CommandType.Text; cmd.Connection = sqlConnection1; sqlConnection1.Open(); reader = cmd.ExecuteReader(); } } 

我想将此查询的结果保存到Excel文件

您可以将resault保存到.CSV文件中,如下所示:

  private void button2_Click(object sender, EventArgs e) { if(checkBox1.Checked) { SqlConnection sqlConnection1 = new SqlConnection(MyConString); SqlCommand cmd = new SqlCommand(); SqlDataReader reader; cmd.CommandText = "INSERT INTO OPENROWSET('Microsoft.ACE.OLEDB.12.0','Text;Database=D:\;HDR=YES;FMT=Delimited','SELECT * FROM [FileName.csv]') select Table1.Column from Table1 where Table1.Column1 not in (select Table2.Column2 from Table2 where Table2.Column2 = Table1.Column1)"; cmd.CommandType = CommandType.Text; cmd.Connection = sqlConnection1; sqlConnection1.Open(); reader = cmd.ExecuteReader(); } } 

如果你需要使用SSMS来做到这一点,你可以使用Query toolbar ,只需点击results to file并执行您的查询。