【发布时间】:2011-10-25 20:37:24
【问题描述】:
我想从数据集中检索数据 (visual studio 2010) 这是sql语句:
SELECT NO_IDENT_1
FROM P240538
WHERE (P240538.DATE_dt > {2011/04/24})
Union
SELECT NO_IDENT_2
FROM P240538
WHERE (P240538.DATE_dt > {2011/04/24})
如果我在没有union 的情况下一次执行一个语句,它会起作用。
string sqltring ="SELECT NO_IDENT_1 FROM P240538 WHERE (P240538.DATE_dt > {2011/04/24}) Union SELECT NO_IDENT_2 FROM P240538 WHERE (P240538.DATE_dt > {2011/04/24})"
OleDbConnection ConnFoxPro = new OleDbConnection(Properties.Settings.Default.S_ConnFoxPro26);
try
{
ConnFoxPro.Open();
// MessageBox.Show(" Connection State = " + ConnFoxPro.State);
}
catch (OleDbException ex)
{
string errorMessages = "";
for (int i = 0; i < ex.Errors.Count; i++)
{
errorMessages += "Index #" + i + "\n" +
"Message: " + ex.Errors[i].Message + "\n" +
"NativeError: " + ex.Errors[i].NativeError + "\n" +
"Source: " + ex.Errors[i].Source + "\n" +
"SQLState: " + ex.Errors[i].SQLState + "\n";
}
System.Diagnostics.EventLog log = new System.Diagnostics.EventLog();
log.Source = "Mon application";
log.WriteEntry(errorMessages);
Console.WriteLine("Vous avez un exeption. Svp Contacter votre administrateur de system cdd ");
}
{
try
{
//MessageBox.Show(RqCompte);
OleDbDataAdapter DA_ID = new OleDbDataAdapter(sqltring, ConnFoxPro);
DataSet Ds_ID = new DataSet();
DA_ID.Fill(Ds_ID, "P240538");
foreach (DataTable thisTable in Ds_ID.Tables)
{
// For each row, print the values of each column.
foreach (DataRow row in thisTable.Rows)
{
// string rowdata = row.ItemArray[0].ToString().Replace(" ", "");
string rowdata1 = row["NO_IDENT_1"].ToString().Replace(" ", "");
if (rowdata1 != "")
liste_No_Ident += rowdata1 + " ";// +"NOMBRE = " + row["nbr_doublon"] + "\n\n";
string rowdata2 = row["NO_IDENT_2"].ToString().Replace(" ", "");
if (rowdata2 != "")
liste_No_Ident += rowdata2 + " ";// +"NOMBRE = " + row["nbr_doublon"] + "\n\n";
}
}
}
catch (Exception e)
{
}
【问题讨论】:
-
有什么问题?你有错误吗?看起来不应该的数据?怎么了?请记住,
UNION不会返回重复数据。如果您想查看重复数据,请使用UNION ALL。请提供有关您获得的输出以及您想要的输出的更多信息。 -
建议:您可能希望将数据库对象命名为比 P240538 更具描述性的名称...另外:尝试对数据库手动运行 sql,我想您会对您得到的结果感到惊讶。
标签: c# sql select dataset union