数据库实验一基本表的定义实验报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验一基本表的定义、删除与修改
一、实验目的:
熟练掌握SQL语句中数据库的创建、基本表的定义、删除与修改,为后继学习作准备。
二、实验属性(验证性)
(1)、了解并掌握SQL SERVER 2008管理控制器的使用;
(2)、掌握数据库和基本表的定义、删除与修改。
三、实验仪器环境与要求
1.每人一台计算机。
2.计算机安装有SQL SERVER2008。
四、实验要求(预习、实验前、实验中、实验后等要求)
1.预习教材第三章,熟悉SQL语句。
2.熟悉SQL SERVER 2008,能使用管理控制器的使用。
3.能够熟练使用SQL语句进行数据库、表的创建、删除与修改等。
五、实验原理
SQL语言基本应用。
六、实验步骤:
(1) 启动SQL SERVER 2008。
(2) 启动SQL SERVER 2008查询分析器;
(3) 创建数据库”学生选课管理数据库”;
CREATE DATABASE 学生选课管理数据库;
(4) 在此数据库下创建如下表:
1 定义基本表
1.1、学生表Student,每个属性名的意义为Sno-学号字符型长度为12、Sname-姓
名字符型长度为20、Ssex-性别字符型长度为4、默认为“男”,Sage-年龄
为整型、Sdept-所在系字符型长度为15。这里要求Sno为主码,Sname不能
为空值,且取值唯一。
CREATE TABLE Student(
Sno CHAR(12) PRIMARY KEY,
Sname CHAR(20) UNIQUE NOT NULL,
Ssex CHAR(4) DEFAULT '男',
Sage INT,Sdept CHAR(15)
);
1.2、建立表课程表Course,其属性名意义分别为Cno-课程号、字符型长度为15,
Cname-课程名、字符型长度为20, Pre_Cno-先修课程号、字符型长度为15,
Credits-学分、整型。Cno为主码。
CREATE TABLE Course(
Cno CHAR(15) PRIMARY KEY,
Cname CHAR(20),
PRE_Cno CHAR(15),
Credits SMALLINT,
FOREIGN KEY(PRE_Cno)
REFERENCES Course(Cno)
);
1.3选课表SC。其中的属性名意义分别为Sno-学号、字符型长度为12,Cno-课程号、字符型长度为15和Grade-考试成绩、整型,考试成绩必须大于0分小于100分。Sno和Cno为主码。
CREATE TABLE SC(
Sno CHAR(12),
Cno CHAR(15),
PRIMARY KEY(Sno,Cno),
Grade SMALLINT CHECK(Grade>=0 AND Grade<=100),
FOREIGN KEY(Sno) REFERENCES Student(Sno)
ON DELETE CASCADE
ON UPDATE CASCADE,
FOREIGN KEY(Cno) REFERENCES Course(Cno)
ON DELETE NO ACTION
ON UPDATE CASCADE
);
1.4向创建好的各个表中至少输入5条数据。
2 修改基本表
2.1 向基本表Student中增加“入学时间”属性列,其属性名为RegisterDate,数据类型为DATETIME型。
alter table Student
ADD RegisterDate DATETIME;
2.2 将Sage(年龄)的数据类型改为SMALLINT型。
alter table Student
ALTER COLUMN Sage SMALLINT;
2.3 删除属性列RegisterDate.
ALTER TABLE Student
DROP COLUMN RegisterDate;
3 删除基本表
3.1 创建一个test表,分别有列tno,tname。
create table test(
tno char(10) PRIMARY KEY,
tname char(20) UNIQUE
);
3.2 删除test表。
DROP TABLE test;