SQL 复合查询
问题:在班级课程表中进行sql复合查询时,sql语句可以在SQL Server查询分析器中执行成功,但是在Visual studio 2005中出现问题
解决:
在SQL Server中进行复合查询,会默认有一个主表,当我们使用隐藏字段时,查询的时候其实会把默认的主表加在隐藏字段之前的
SELECT
classcourse.[ID],
class.ClassName, teacher.TeacherName,
classroom.ClassroomName, course.CourseName, classCourse.WeekStart,
classCourse.WeekEnd FROM class INNER JOIN
classCourse ON class.classID = classCourse.ClassID INNER JOIN
classroom ON classCourse.ClassroomID = classroom.ID INNER JOIN course ON classCourse.CourseID = course.ID INNER JOIN
teacher ON classCourse.TeacherID = teacher.ID
如果使用[id],则出现“列名id不明确”
使用[classcourse.id] ,则出现“classcourse.id 列名无效”
采用的方法是
classcourse.[ID]
,
当然,出现在这种情况,主要也是因为多张联合表中有多个相同的主键ID字段。