Die drei Tabellen auf Seite 79 der Einführung in Datenbanksysteme (Fünfte Auflage) wurden im Folgenden erstellt, um uns die Arbeit am Computer zu erleichtern.
Die Kursdatenbank der Studierenden enthält die folgenden drei Tabellen
- Studententabelle: Student( Sno ,Sname,Ssex,Sage,Sdept)
- Kursplan: Kurs ( Cno , Cname, Cpno, Ccredit)
- Zeitplan für die Kursauswahl für Studenten: SC ( Sno , Cno , Note)
Der Hauptcode der Beziehung ist fett gedruckt und die Datenbeispiele in jeder Tabelle sind:
Student
Studierendennummer (Sno) | Name | Sex | Alter | Abteilung (Abteilung) |
---|---|---|---|---|
201215121 | Li Yong | männlich | 20 | CS |
201215122 | Liu Chen | weiblich | 19 | CS |
201215123 | Wang Min | weiblich | 18 | MA |
201215125 | Zhang Li | männlich | 19 | IST |
Kurs
Kursnummer (Cno) | Kursname (Cname) | Vorkurs (Cpno) | Kredit (Ccredit) |
---|---|---|---|
1 | Datenbank | 5 | 4 |
2 | Mathematik | 2 | |
3 | Informationssystem | 1 | 4 |
4 | Betriebssystem | 6 | 3 |
5 | Datenstruktur | 7 | 4 |
6 | Datenverarbeitung | 2 | |
7 | PASCAL-Sprache | 6 | 4 |
SC
Studierendennummer (Sno) | Kursnummer (Cno) | Grad |
---|---|---|
201215121 | 1 | 92 |
201215121 | 2 | 85 |
201215121 | 3 | 88 |
201215122 | 2 | 90 |
201215122 | 3 | 80 |
1. Tabellenanweisung erstellen
Sno ist der Primärschlüssel der Student-Tabelle, Cno ist der Primärschlüssel der Course-Tabelle und die Fremdschlüssel Sno und Cno in der SC-Tabelle sind die Primärschlüssel der Student-Tabelle bzw. der Course-Tabelle.
create table Student (Sno char(9) primary key,Sname char(20),Ssex char(2),Sage int,Sdept char(10))charset=utf8;
create table Course (Cno char(2) primary key,Cname char(20),Cpno char(2),Ccredit integer)charset=utf8;
create table SC (Sno char(9),Cno char(2),Grade float,foreign key(Sno) references Student(Sno),foreign key(Cno) references Course(Cno))charset=utf8;
2. Daten einfügen
insert into Student values('201215121','李勇','男',20,'CS');
insert into Student values('201215122','刘晨','女',19,'CS');
insert into Student values('201215123','王敏','女',18,'MA');
insert into Student values('201215125','张立','男',19,'IS');
insert into Course values('1','数据库','5',4);
insert into Course values('2','数学','',2);
insert into Course values('3','信息系统','1',4);
insert into Course values('4','操作系统','6',3);
insert into Course values('5','数据结构','7',4);
insert into Course values('6','数据处理','',2);
insert into Course values('7','PASCAL语言','6',4);
insert into SC values('201215121','1',92);
insert into SC values('201215121','2',85);
insert into SC values('201215121','3',88);
insert into SC values('201215122','2',90);
insert into SC values('201215122','3',80);
3. Abfragetabelle
select * from Student;
select * from Course;
select * from SC;