【发布时间】:2013-12-24 19:44:33
【问题描述】:
使用内部连接并从 3 个表中获取数据后,我想显示分配给 Jennifer 小姐的课程名称,Tchr_ID 是 4,ddlcourse 是 dropdown list id
SqlCommand cmd = new SqlCommand(@"
SELECT
Course.Course_name,
Tchr_course_ID
FROM Course
INNER JOIN CourseOffering
ON Course.Course_ID=CourseOffering.Course_ID
INNER JOIN Tchr_Course
ON Tchr_Course.Course_offer_ID=CourseOffering.Course_offer_ID
where Tchr_Course.Tchr_ID = 4", conn);
SqlDataReader dr = cmd.ExecuteReader();
ddlcourse.DataSource = dr;
ddlcourse.Items.Clear();
ddlcourse.DataTextField = "Course_name";
ddlcourse.DataValueField = "Tchr_course_ID";
ddlcourse.DataBind();
获取后,我将下拉列表textfield 显示为课程名称,我将datavaluefiled 应用为tch_Course_ID,因为当用户选择课程时,其tchr_course_ID 将保存在数据库中。为了保存 id 我正在使用 ddlcourse.SelectedItem.Value 但这在我关于外键的插入语句中给了我错误。它没有考虑所选课程的价值。为什么?我该如何纠正?
这些表都参与其中..
课程表:(其中有课程列表)==> (Course_ID,Course_name)
CourseOffering 表:(其中记录了这些课程是 本学期提供)==> >(Course_offer_ID,Course_ID)
Tchr_Course 表:(有该课程分配到的记录 这位老师)==>(Tchr_course_ID、Course_offer_ID、Tchr_ID)
档案表:(简单包含教师记录)== > (Tchr_ID、姓名、电子邮件)
【问题讨论】:
-
请告诉您要插入的表格?
-
这基本上是一个讲座上传系统,教师必须先选择一门课程,然后她必须上传一个文件。所以插入 Lecture 文件或插入 tchr_Course_ID 的表是.. Lecture (Lecture_ID,Tchr_Course_ID,LEcture_File)
-
请确认 tch_course_id 是否存在于 tch_course_table 中?
-
Id 确实存在于表中,但插入语句仍然给我错误..