我有三个课程,课程和book_adoption。我在执行以下代码时遇到错误 -
connect();
string qstr = "select course_id, book_isbn, book_title from texts natural join Book_Adoption natural join course where exists(select count(book_isbn) from Book_Adoption natural join course group by dept having count(course_id)>1) order by book_title";
da = new OleDbDataAdapter(qstr, con);
ds = new DataSet();
da.Fill(ds, "course");
//da.Fill(ds, "Texts");
//da.Fill(ds, "Book_Adoption");
dt = ds.Tables[0];
for (int i = 0; i < dt.Rows.Count; i++)
{
listBox1.Items.Add(dt.Rows[i]["course_id"].ToString());
listBox1.Items.Add(dt.Rows[i]["book_isbn"].ToString());
listBox1.Items.Add(dt.Rows[i]["book_title"].ToString());
}
我在第da.Fill(ds, "texts");
行收到错误
当我没有使用自然连接并进行简单查询时,我得到了正确的输出。代码有什么问题?
答案 0 :(得分:1)
我认为这可能是你的SQL查询的一点
(select count(book_isbn) from Book_Adoption
您选择的计数不是列,这可能会导致问题,因为它不知道列名 有关类似情况,请参阅here。