实验二--通过SQL语句创建与管理数据表

上传人:ali****an 文档编号:116030658 上传时间:2019-11-15 格式:DOC 页数:13 大小:776.50KB
返回 下载 相关 举报
实验二--通过SQL语句创建与管理数据表_第1页
第1页 / 共13页
实验二--通过SQL语句创建与管理数据表_第2页
第2页 / 共13页
实验二--通过SQL语句创建与管理数据表_第3页
第3页 / 共13页
实验二--通过SQL语句创建与管理数据表_第4页
第4页 / 共13页
实验二--通过SQL语句创建与管理数据表_第5页
第5页 / 共13页
点击查看更多>>
资源描述

《实验二--通过SQL语句创建与管理数据表》由会员分享,可在线阅读,更多相关《实验二--通过SQL语句创建与管理数据表(13页珍藏版)》请在金锄头文库上搜索。

1、实验二 一、实验目的(1)掌握查询分析器的使用。(2)掌握通过SQL语句创建表的方法。(3)掌握通过SQL语句修改表结构的方法。(4)掌握通过SQL语句添加、修改、删除表数据的方法。二、实验内容1、通过SQL语句删除表 用SQL语句在数据库Student_info中删除实验一创建的Student表、Course表、SC表。1、选择Student_info数据库,在该数据库环境中“新建查询”,然后完成删除操作2、分别填写如下SQL语言、drop table Student、drop table Course、drop table SC3、删除操作完成2、通过SQL语句创建表用SQL语句在数据库S

2、tudent_info中创建实验一中的Student表、Course表、SC表,结构如实验一中表2、表3、表4(即创建出空表即可)所示、创建Student表create table Student(Sno char(8) primary key,Sname varchar(8) not null,Sex char(2) not null,Birth smalldatetime not null,Classno char(3) not null,Entrance_date smalldatetime not null,Home_addr varchar(40)、创建Course表create t

3、able Course(Cno char(3) primary key,Cname varchar(20) not null,Total_perior smallint check(Total_perior0),Credit tinyint check(Credit0)、创建SC表create table SC(Sno char(8) not null,Cno char(3) not null,Grade tinyint check(Grade=0 and Grade=100),primary key(Sno,Cno),foreign key(Sno) references Student(S

4、no),foreign key(Cno) references Course(Cno))3、通过SQL语句管理表结构(1)添加和删除列a. 给Student表增加身高(以米单位)Stature列 ,类型为numeric(4,2),允许为空值,且身高值需小于3.0米。alter table Student add Stature numeric(4,2) check(Stature=0)b. 给Student表增加所在系Sdept列,字符型,长度2,不允许为空值。alter table Student add Sdept char(2) not nullc. 给Student表增加邮政篇码Pos

5、tcode列,字符型,长度为6,可以为空,若不为空时,则要求其值只能出现数字,不能是其它字符。alter table Student add Postcode char(6) check(Postcode Like 1-90-90-90-90-90-9)d.删除Student表中身高Stature列。、添加Stature列时就已知该列存在约束条件,若要删除该列,必须先删除约束条件,则首先必须先找出约束条件的约束名称。以下有两种方法:1、写入SQL语句找出alter table Student drop column Stature2、运用企业管理器找出a、打开Student表b、选择Statu

6、re行,单击右键,选择“CHECK约束”c、约束名称显而易见、其次删除Stature约束alter table Student drop constraint CK_Student_Stature_1A14E395、最后删除Stature列,完成alter table Student drop column Stature(2)添加和删除约束a.在Student表添加约束:入学时间必须在出生年月之后alter table Student add constraint birth1check(BirthEntrance_date)b.给SC表的成绩Grade列增加默认值约束,默认值为0alter

7、 table SCadd constraint grade1default(0) for gradec.删除Grade列的默认值约束锁定Grade列的约束名即可alter table SCdrop constraint grade1(grade1 为约束名)4、 通过SQL语句添加、修改、删除表中数据(1)插入数据a. Student表、Course表、SC表的记录见实验一的表5、表6、表7,其它数据可自行添加。要求Student表和SC表中数据包括了每位同学自己的学号。、向Student表中添加数据insert into Student values(20110001,张虹,男,1992-0

8、9-01,051,2011-09-01,南京,CS,200413);insert into Student values(20110002,林红,女,1991-11-12,051,2011-09-01,北京,CS,100010);insert into Student values(20110103,赵青,男,1993-05-11,061,2011-09-01,上海,MS,200013);注意:Sdept的类型为char(2),添加数据是不能写“计算机系”和“软件工程”,应改为“CS”和“MS”、向Course表中添加数据insert into Course values(001,高数,96,

9、6);insert into Course values(002,C语言程序设计,80,5);insert into Course values(003,JAVA语言程序设计,48,3);insert into Course values(004,Visual Basic,48,4);、向SC表中添加数据insert into SC values(20050001,001,89); insert into SC values(20110001,001,89);insert into SC values(20110001,002,78);insert into SC values(2011000

10、1,003,89);insert into SC values(20110002,002,60);insert into SC values(20110103,001,80);上面截图所示的外键约束可不予考虑b.执行如下语句:insert into Student(Sno, Sname, Sex) values(20101101,赵青,男),该语句能成功执行吗?为什么?答:不能成功执行,因为不能将值NULL 插入列Sdept中c. 执行如下语句:insert into sc values(20110103,005,80),该语句能成功执行吗?为什么?答:不能成功执行,因为SC表中的学号“005

11、”的同学在Course表中不存在。而SC表中的Cno是作为Course表的外键存在的,所以不能成功执行。(2)修改数据 a.使用T-SQL语句,将Course表中的课程号为002的学分改为4,总学时改为64。update Courseset Credit=4where Cno=002update Courseset Total_perior=64where Cno=002结果:b.使用T-SQL语句,将SC表中的选修了002课程的同学的成绩*80%。update SCset Grade=Grade*0.8where Cno=002结果:(3)删除数据 a. 使用T-SQL语句,删除选修了“C语

12、言程序设计”的学生的选课记录。删除时,发现存在外键约束,且约束名为FK_SC_Cno_1920BF5C,则先删除约束删除约束:alter table SCdrop constraint FK_SC_Cno_1920BF5C删除记录:delete from Coursewhere Cno in (select Cno from Course where Cname=c语言程序设计)结果:b. 使用T-SQL语句,删除所有的学生选课记录。delete from SC结果:说明:删除后,请重新插入SC表中的记录。同第4题所示步骤相同,insert into SC values(20050001,001,89); insert into SC values(20110001,001,89);insert into SC values(20110001,002,78);insert into SC values(20110001,003,89);insert into SC values(20110002,002,60);insert into SC values(20110103,001,80);结果:

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 其它相关文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号