实验1 数据库及数据库表的建立实验
1. 实验目的
本实验的目的是使学生熟悉SQL Server 2000的用法,熟悉如何建立数据库与关系模式,熟悉SQL SERVER的常用数据类型,加深对SQL和SQL语言的查询语句的理解。熟练掌握简单表的创建与修改。
2. 实验时数 2学时
3. 实验内容
1. 建立学生-课程数据库StudentDB,创建数据库语句为:
Create database StudentDB
2. 创建关系模式“StudentDB”,并创建数据库下的三张表Student、Course、SC
a。学生表:Student(Sno,Sname,Sex,Sage,Sdept)
Student由学号(Sno)、姓名(Sname)、性别(Sex)、年龄(Sage)、所在系(Sdept)五个属性组成,其中Sno为主键。
数据类型说明如下:
例如:CREATE TABLE Student
(Sno CHAR(9) PRIMARY KEY, /* 列级完整性约束条件*/
Sname CHAR(20) UNIQUE, /* Sname取唯一值*/
Ssex CHAR(2),
Sage SMALLINT,
Sdept CHAR(20)
);
并且插入相应数据
b.课程表:Course(Cno,Cname,Ccredit)
Course课程号(Cno)、课程名(Cname)、先修课(Cpno)、学分(Ccredit)三个属性组成,其中Cno为主键。其中先修课(Cpno)为Course表的外码,并且引用Course表的Cno属性列。
数据类型说明为:
并且插入相应数据
c.学生选课表:Score(Sno,Cno,Grade)
Score由学号(Sno)、课程号(Cno)、成绩(Grade)三个属性组成,其Sno、Cno的组
合为主键。其中Sno,Cno分别为该Score表的外码,分别引用Student表的Sno属性列和Course表的Cno属性列。
数据类型说明为:
并且插入相应数据
3. 基本表的修改:
a) 向Student表增加“入学时间”列,期数据类型为日期型
b) 将成绩的数据类型由字符型改为可变字符型varchar
c) 增加课程名称必须取唯一值的约束条件
4. 删除基本表
a) 删除Student表
b) 若该表上存在引用关系,则先删除引用该表的表。
5. 索引的建立与删除(理解以下语句的含义并上机实践):
a) 在Student表上建立Sname列上的非聚集索引Stusname,
语句如下:CREATE NONCLUSTER INDEX Stusname ON Student(Sname);
b) 为学生-课程数据库中的Student,Course,SC 3个表建立唯一索引。其中
Student表按学好升序建唯一索引,Course表按课程号升序建唯一索引,SC表按学号升序和课程号降序建唯一索引。
c) 删除Student表的Stusname 索引。
4. 实验要求
在SQL Server 2000完成以上的任务。并检查所做的操作表现。要求完成实验报告,写出相应的SQL 语句,并配有相应的截图。
因篇幅问题不能全部显示,请点此查看更多更全内容