資料庫存儲課程表
① 資料庫中建立學生表課程表選課表及其聯系
以 access 為例,建立數據表如下:
1、學生表
② 有一個[學生課程]資料庫,資料庫中包括三個表
CREATE TABLE 學生表
(學號 VARCHAR(12) NOT NULL,
姓名 VARCHAR(20) NOT NULL,
性別 VARCHAR(10) NOT NULL,
年齡 INT CHECK(年齡>=0 AND 年齡<=120),
所在系 VARCHAR(20) NOT NULL,
PRIMARY KEY (學號)
)
CREATE TABLE 課程表
(課程號 VARCHAR(12) NOT NULL,
課程名 VARCHAR(20) NOT NULL,
先修課號 VARCHAR(20) NOT NULL,
學分 INT CHECK(學分>0 AND 學分<=20),
PRIMARY KEY (課程號)
)
CREATE TABLE 成績表
(學號 VARCHAR(12) NOT NULL,
課程號 VARCHAR(12) NOT NULL,
成績 REAL CHECK(成績>=0 AND 成績<=100),
PRIMARY KEY (學號,課程號),
FOREIGN KEY (學號) REFERENCES 學生表 (學號),
FOREIGN KEY (課程號) REFERENCES 課程表(課程號)
)
③ 資料庫中包含學生表、課程表、學生選課表3個表,分別是什麼
1、SELECT 課程號, 課程名, 課程學分
FROM 課程 WHERE 課程號 IN(SELECT 課程號
FROM 選課
GROUP BY 課程號
HAVING COUNT(學生號) BETWEEN 2 AND 4 )
2、SELECT MAX(成績) - MIN(成績) AS 分數之差
FROM 選課
倘若要每門課程相差
SELECT 課程, MAX(成績) - MIN(成績) AS 分數之差
FROM 選課
GROUP BY 課程
④ 有一個[學生課程]資料庫,資料庫中包括三個表:
sql">1
createtablestudent(
snovarchar(5)notnullprimarykey,
snamevarchar(10),
ssexchar(2),
sageint,
sdeptvarchar(20))
2
3
selectsno,gradefromsgwherecno=5orderbygradedesc
4
selectmax(grade)as最高成績,avg(grade)as平均成績fromsgwherecno=1
5
deletefromstudentwheresno='05019'
⑤ 在資料庫中存儲學生一周的課程表,資料庫如何設計
將表設計成(班級,日期,課程1,課程2,...課程8)比較好點.