《数据库系统原理》课程实验
姓名:
班级:
学号:
佛山科学技术学院计算机系
2012年12月
目录
3
5
SQL数据定义 5
SQL数据查询 7
、嵌套和集合查询 11
SQL的数据更新 16
18
23
27
学生-课程数据库xskc中用到的三个表文件如下:
学生表:Student
Sno(学号)
Sname(姓名)
Ssex(性别)
Sage(年龄)
Sdept(所在系)
200215121
李勇
男
20
CS(计算机科学系)
200215122
刘晨
女
19
CS(计算机科学系)
200215123
王敏
女
18
MA(数学系)
200215125
张立
男
19
IS(信息系)
课程表:Course
Cno(课程号)
Cname(课程名)
Cpno(先修课)
Ccredit(学分)
1
数据库
5
4
2
数学
2
3
信息系统
1
4
4
操作系统
6
3
5
数据结构
7
4
6
数据处理
2
7
PASCAL
6
4
学生选课表:SC
Sno(学号)
Cno(课程号)
Grade(成绩)
200215121
1
92
200215121
2
85
200215121
3
88
200215122
2
90
200215122
3
80
SQL数据定义
一、实验目的和要求
、删除与修改;
。
二、实验内容与步骤
(一)建立数据库
通过企业管理器或查询分析器建立学生-课程数据库xskc。
create database xskc
on
( name=xskc_data,
filename='e:\sjksy\')
log on
( name=xskc_log,
filename='e:\sjksy\')
注:先在E:盘上建立一个文件夹(例如:E:\sjksy),数据库文件保存到自建的文件夹中。
(二)基本表的定义、修改与删除
利用查询分析器或企业管理器创建基本表,并输入数据。
【题1-01】建立一个学生表Student,它由学号Sno、姓名Sname、性别Ssex、年龄Sage、所在系Sdept五个属性组成。要求“学号”为主键,“姓名”不能为空,“性别”默认值为“男”。
CREATE TABLE Student
(Sno CHAR(9) PRIMARY KEY,
Sname CHAR(20) NOT NULL,
Ssex CHAR(2) DEFAULT ‘男’,
Sage INT,
Sdept CHAR(20)
);
说明:在Microsoft SQL Server 2000的查询分析器(Query Analyzer)中使用单条SQL语句,其末尾不需要分号“;”作为命令结尾标记。通常,SQL Server 2000对大多数末尾带有分号的SQL命令都能顺利执行,但对少数的SQL命令,末尾若带分号,则SQL Server 2000会给出错误信息提示。比如,若在实验五的例1的SQL命令末尾加上一个分号“;”,SQL Server 2000就会出现“Incorrect syntax near ';'”的提示,虽然SQL Server 2000实际上已经执行了该命令。
【题1-02】建立课程表Course,o、ame、redit学分四个属性组成。要求“课程号”为主键,“课程名”属性不能为空。
CREATE TABLE Course
(Cno CHAR(4) PRIMARY KEY,
Cname CHAR(40) NOT NULL ,
Cpno CHAR(4),
Ccredit INT
);
【题1-03】建立学生选修课表SC,包含学号Sno、o、成绩Grade三个字段。要求建立主键及与student、kc表联接的外键,并创建检查约束(Grade>=0 and Grade<=100)。
CREATE TABLE SC
( Sno CHAR(9),
Cno CHAR(4),
Grade INT,
PRIMARY KEY(o),
FOREIGN K
数据库实验报告模版 来自淘豆网www.taodocs.com转载请标明出处.