实验三 基本表的定义、删除与修改

实验三 基本表的定义、删除与修改

 

实验目的:熟练掌握基本表的定义、删除与修改,索引的建立与删除的方法,为后继学习作准备。

实验要求:

    1. 了解并掌握SQL查询分析器及企业管理器的使用;
    2. 掌握基本表的定义、删除与修改。
    3. 掌握建立索引的二种方法,即在基本表中建立和用命令方式建立。;
    4. 掌握删除索引的方法。

实验设备:装有SQL SERVER 2005的电脑

实验时数:2课时

类    别:验证

实验步骤:

  1. 启动Microsoft SQL Server 2005;
  2. 进入Microsoft SQL Server Management Studio;
  3. 选择需要操作的数据库(默认为“master”库,“master”为系统数据库),以后的实验操作时,一定要在自己所建的库上进行。右键单击要操作的数据库,选择“新建查询”。

 

 

 

二、修改基本表

例3. 4 向基本表Students中增加“入学时间”属性列,其属性名为Sentrancedate,数据类型为DATETIME型。

ALTER TABLE Students ADD Sentrancedate DATETIME

 

例3. 5 在管理器管理器界面下,鼠标右键单击“Students”表,选择“修改表”将Sage(年龄)的数据类型改为SMALLINT型。

 

alter table Students alter column Sage SMALLINT 

 

例3. 6 删除Sname(姓名)必须取唯一值的约束。 

ALTER TABLE Students DROP CONSTRAINT un_Sname;

注意SQL Server 2005 增加了删除属性的命令。比如,删除属性列Sentrancedate的命令为:

ALTER TABLE Students DROP COLUMN Sentrancedate;

说明

⑴ 为了保证后面例子能够顺利运行,请大家一定将属性列Sentrancedate从Students表中删除。

⑵ 为了调试SQL语句方便,这里没有在表Reports中增加参照完整性约束,甚至没有定义主键。等本章学完后,第7章的实验系统就是把这些约束全部加上了。

三、删除基本表

例3. 7  删除Students表。

DROP TABLE Students;

从管理器界面上删除表Courses:鼠标右键单击“Courses”,在出现的菜单上选择“删除”。

说明:此2表删除后,请立即用前面的例子将其建立起来,以便后面的例子使用。

四、向表中添加元组

例3. 8  将一个学生元组(S01,王建平,男,21,计算机)添加到基本表Students中。

INSERT

INTO Students

VALUES ('S01','王建平','男',21,'自动化');

 

用insert语句将自己的信息插入学生表

练习:请用以下方式之一完成向添加元组的操作:

  1. 请读者用insert命令将其余5个学生的元组也添加到基本表Students中。
  2. 鼠标右键单击“Students”,选择“打开表”,将其余的5个学生的元组添加。

 

请写出其中的一条插入命令:

insert into Students values('S06','长江','男',20,'数学');

 

 

 

示例:向Courses表插入元组(‘C01’,’英语’,’’,4)的命令为:

INSERT

INTO Courses

VALUES ('C01','英语','',4);

练习:向基本表Courses添加基本信息(二选一

  1. 请读者用这个命令将其余6门课程的信息插入Courses表中。
  2. 鼠标右键单击“Courses”,选择“打开表”,将其余6门课程的信息插入。

请写出其中的一条插入命令:

 

INSERT INTO Courses VALUES ('C02','数据结构','',2);

 

例3. 9 将学习成绩的元组(‘S01’, ’C01’)添加到基本表Reports中。

INSERT

INTO Reports(Sno, Cno)

VALUES (‘S01’,’C01’);

练习:向基本表Reports添加基本信息(二选一

  1. 请读者用这个命令将其余7个选课元组也添加到基本表Reports中。
  2. 鼠标右键单击“Reports”,选择“打开表”,将其余7个选课元组添加。

请写出其中的一条插入命令:

 

INSERT INTO Reports(Sno,Cno) VALUES ('S04','C03');

 

五、建立索引

例3. 10 为学生选课数据库中的Students,Courses,Reports三个表建立索引。

其中Students表按Sno(学号)升序建唯一索引,Courses表按Cno(课程号)升序建唯一索引,Reports表按Sno(学号)升序和Cno(课程号)号降序建唯一索引。其语句为:

CREATE UNIQUE INDEX Stu_Sno ON Students(Sno);

练习:请为Courses表按Cno(课程号)升序建唯一索引;

CREATE UNIQUE INDEX Cou_Cno ON Courses(Cno);

 

CREATE UNIQUE INDEX Rep_Scno ON Reports(Sno ASC, Cno DESC);

 

例3. 11 在基本表Students的Sname(姓名)和Sno(学号)列上建立一个聚簇索引。

Students中的物理记录将按照Sname值和Sno值的升序存放。其语句为:

CREATE CLUSTERED INDEX Stu_Sname_Sno ON Students(Sname, Sno);

六、删除索引

例3. 12  删除基本表Reports上的Rep_SCno索引。

DROP INDEX Reports.Rep_Scno;

 

  • 2
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值