在一个datagridview中组合sql结果 [英] Combine to sql results in one datagridview
问题描述
大家好!
我有两个搜索sql命令,我想在一个datagridview中得到结果。我该怎么做?
I have two search sql commands and I would like to get the result in one datagridview. How can i do this?
我的搜索代码:
首先 -
First -
private void button1_Click(object sender, EventArgs e)
{
try
{
string connStr = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + path + ";Extended Properties=Excel 12.0;";
OleDbConnection conn = new OleDbConnection(connStr);
OleDbDataAdapter da = new OleDbDataAdapter("Select * from [" + testcb.SelectedItem.ToString() + "$] where [" + addcb.SelectedItem.ToString() + "] = '" + addtb.Text + "'", conn);
DataTable ds = new DataTable();
da.Fill(ds);
dataGridView2.DataSource = ds;
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
秒 -
Second -
private void searchbtn_Click(object sender, EventArgs e)
{
try
{
string connStr = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + path + ";Extended Properties=Excel 12.0;";
OleDbConnection conn = new OleDbConnection(connStr);
OleDbDataAdapter da = new OleDbDataAdapter("Select * from [" + testcb.SelectedItem.ToString() + "$] where [" + comboBox1.SelectedItem.ToString() + "] = '" + textBox5.Text + "'", conn);
DataTable dt = new DataTable();
da.Fill(dt);
dataGridView2.DataSource = dt;
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
我有一个datagridview,希望在一个$ b中看到2个请求的总结果$ b (表格将相同!)
I have one datagridview and would like to see total result of 2 requests in one (tables will be the same!)
非常感谢!
此致,
Adil Aliyev
Adil Aliyev
推荐答案
有人刚刚问了一个
类似的问题在这里,我建议尝试使用UNION进行查询。
Someone just recently asked a similar question here, I recommend trying to query with UNION.
SELECT *
FROM [Process_Updates]
WHERE [Process_Updates].[Type] LIKE "Andrew*"
UNION
SELECT *
FROM KB_Articles
WHERE KB_Articles.[Type] LIKE "Andrew*"
如果用SELECT [要返回的字段]替换SELECT *,则替换WHERE [Type] LIKE" Andrew *"使用参数,例如cmd.Parameters.AddWithValue等。
Where you replace SELECT * with SELECT [fields to return], replace WHERE [Type] LIKE "Andrew*" with a parameter e.g. cmd.Parameters.AddWithValue etc.
注意正如我在您提出的其他问题中指出的那样,请远离在SQL中使用字符串连接。
Note as I indicated in your other question, please stay away from using string concatenation in your SQL.
- 如果某个值中有撇号并按现在编码,则在运行查询时会在运行时抛出执行。使用AddWithValue添加参数的大约99%的时间都很好,另外一个百分比需要通过添加到参数集合来添加参数
。 - 接下来,无论如何例如,最好使用参数来防止SQL注入。
这篇关于在一个datagridview中组合sql结果的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!