3

(ASP + WML) を使用してこのモバイル ポータル/アプリケーションを作成しています。特定の年の特定の学期に学生が受講したコースのリストを生成する必要があります。

次のテーブルがあります。

ここに画像の説明を入力

前のページから、次のパラメーターがあります。

string StudentId = Request.Params["StudentId"];
string Year = Request.Params["Year"];
string Semester = Request.Params["Semester"];
  • ( ) 内の値はYear「2011」または「2012」です。
  • ( ) の値Semesterは、"First" または "Second" または "Summer" のいずれかです。
  • ( ) の値はStudentId、Students テーブルの id から以前に抽出された Number です。

テーブル内のデータのサンプルとして。

ここに画像の説明を入力

私はここで立ち往生しています

string connectionString = @"Data Source=.\SQLEXPRESS;AttachDbFileName=|DataDirectory|\Uni.MDF;" +
            "Integrated Security=True;User Instance=True";
           string queryString =" ??????????????????????????? " ;

ユーザーが(特定の学期に)登録されているコースを表示するページを取得したい。情報は、情報が表示される新しいページへの URL で後で渡されます。

何かのようなもの:

First Semester  2010
Student : Arin Rizk

Course Name     No. of Credit      Mark
    AAA                3            65
    BBB                3            23
    CCC                3            65
    DDD                3            58
    EEE                3            70

Your GPA for this semster is 3.12

編集

後でページ内の情報を印刷するにはどうすればよいですか?

どうすればいいですか?ビューを作成しようとしましたが、なぜ機能しないのかわかりません。

テーブルまたは DB 構造を変更できません。

前もって感謝します。

4

2 に答える 2

3
select st.firstname + ' ' + st.lastname,se.year, c.coursename,c.credits,ri.mark 
from students st 
inner join RegisteredIn ri on ri.studentid=st.id
inner join semester se on se.id=ri.semesterid
inner join Courses c on c.id=se.courseid

このクエリは、名前、学年、コース名、単位、およびマークを提供します。

gpa 計算用に別のクエリを作成する必要があります。または、上記で取得したデータを使用して Web サーバーで計算することもできます。

于 2012-04-15T20:53:29.267 に答える
0

コースリストについては、次のことができます。

Select Courses.CourseName, Courses.NumberOfCredits, RegisteredIn.Mark
From dbo.Courses Inner Join dbo.RegisteredIn On Courses.id = RegisteredIn.CourseID
    Inner Join dbo.Semester On RegisteredIn.SemesterID = Semester.id
Where RegisteredIn.StudentID = '20111' AND
    Semester.Title = 'First' AND 
    Semester.Year = 2011
Order By Courses.CourseName
于 2012-04-15T20:56:12.243 に答える