資料庫檢視

f0r9發表於2024-05-23

學生表:Student (Sno, Sname, Ssex , Sage, Sdept)
學號,姓名,性別,年齡,所在系 Sno為主鍵

students | CREATE TABLE `students` (
  `Sno` int NOT NULL,
  `Sname` char(30) DEFAULT NULL,
  `Ssex` char(10) DEFAULT NULL,
  `Sage` int DEFAULT NULL,
  `Sdept` char(20) DEFAULT '計算機',
  PRIMARY KEY (`Sno`),
  UNIQUE KEY `Sname` (`Sname`),
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 

課程表:Course (Cno, Cname,)
課程號,課程名 Cno為主鍵

CREATE TABLE `course` (
  `Cno` int NOT NULL,
  `Cname` char(20) DEFAULT NULL,
  PRIMARY KEY (`Cno`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 

學生選課表:SC (Sno, Cno, Score)
學號,課程號,成績 Sno,Cno為主鍵

CREATE TABLE `sc` (
  `Sno` int DEFAULT NULL,
  `Cno` int NOT NULL,
  `Score` char(10) DEFAULT NULL,
  PRIMARY KEY (`Cno`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 

1.用SQL語句建立學生表student,定義主鍵,姓名不能重名,性別只能輸入男或女,所在系的預設值是 “計算機”。

  `Sdept` char(20) DEFAULT '計算機', -- 預設計算機
  PRIMARY KEY (`Sno`),-- 主鍵
  UNIQUE KEY `Sname` (`Sname`),-- 不許重複

2.修改student 表中年齡(age)欄位屬性,資料型別由int 改變為smallint。
alter table students modify Sage smallint;
image

3.為SC表建立按學號(sno)和課程號(cno)組合的升序的主鍵索引,索引名為SC_INDEX 。
create index SC_INDEX on SC(Sno,Cno asc);
image

4.建立一檢視 stu_info,查詢全體學生的姓名,性別,課程名,成績。

create view stu_info
as select Sname,Ssex,Cname,Score from students,Course,SC
where students.Sno=SC.Sno and SC.Cno=Course.Cno;

image

相關文章