[英]Exporting CSV to SQL in C# - how to offset the export by one column
[英]how to run sql query on all column data and export result to csv -in c#
我在访问数据库上进行了sql查询。 在datagridview2中,我在第一列中看到已安装程序,在第二栏中看到该程序安装了多少台计算机。
col1 col2
xxxx 1
yyyy 2
zzzz 3
OleDbCommand command2 = new OleDbCommand();
command2.Connection = connection;
string query = "SELECT Item_1, count(Item_1) FROM (SELECT Item_1 FROM Audit_data where Category_ID = 500) group by Item_1 having (count(*)>0) ";
command2.CommandText = query;
OleDbDataAdapter da1 = new OleDbDataAdapter(command2);
da1.Fill(dt2);
dataGridView2.DataSource = dt2;
dataGridView2.AutoResizeColumns();
当在datagridview2上更改选择时,datagridview3仅包含安装程序的计算机名称:
string selcell = Convert.ToString(dataGridView2.CurrentCell.Value);
OleDbCommand command3 = new OleDbCommand();
command3.Connection = connection;
string query = "select distinct Fully_Qualified_Domain_Name from Audit_Data, Computer_master where Item_1= '"+selcell+"' and category_id=500 and Audit_Data.computer_id = Computer_master.computer_id ";
command3.CommandText = query;
OleDbDataAdapter da3 = new OleDbDataAdapter(command3);
da3.Fill(dt3);
dataGridView3.DataSource = dt3;
dataGridView3.AutoResizeColumns();
我想运行这些查询以获取具有所有已安装计算机名称的所有软件。 我不知道如何在col 1上的所有数据上运行查询并将其导出到csv这样。
xxxx; 1; qwer_pc
yyyy; 2; asdf_pc;
qwer_pc
zzzz; 3; asdf_pc;
qwer_pc;
yxcv_pc
谁能帮助解决这个问题? 或者我可以以某种方式组合两个查询?
该解决方案比我想象的要容易:
SELECT distinct Item_1,Fully_Qualified_Domain_Name FROM Audit_data,Computer_master where Category_ID = 500 and Audit_data.computer_id = Computer_master.Computer_id
CSV导出如下:
string csv = string.Empty;
//Add the Header row for CSV file.
foreach (DataGridViewColumn column in dataGridView4.Columns)
{
csv += column.HeaderText + ',';
}
//Add new line.
csv += "\r\n";
//Adding the Rows
foreach (DataGridViewRow row in dataGridView4.Rows)
{
foreach (DataGridViewCell cell in row.Cells)
{
//Add the Data rows.
csv += cell.Value.ToString().Replace(",", ";") + ',';
}
//Add new line.
csv += "\r\n";
}
//Exporting to CSV.
string folderPath = txt_csv_exp_path.Text;
File.WriteAllText(folderPath +txt_exp_file_name.Text +" .csv", csv);
MessageBox.Show("CSV file saved.");
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.