1、0720林攀 07419043 copyright 实验二 数据库的更新姓名:林攀 学号;07419043一、实验目的 1进一步熟悉查询分析器和企业管理器的使用方法。 2掌握向数据库输人数据、修改数据和删除数据的方法。二、实验内容 在已经存在的学生表中增加一个邮件地址“SEMAIL”的新属性,允许为空。ALTER TABLE 学生 ADD SEMAIL CHAR(30) NULLselect *from 学生s001王明 男1986824571 D2 NULLs002李勇 男2389454321 D3 NULLs003刘燕 女21NULLD1 NULLs004王萍 女23NULLD1 NULL
2、s005王佳 男2413098765892 D3 NULLs006赵婷 女20null D1 NULL2)在学生表中限定年龄Sage 小于80岁大于16岁。ALTER TABLE 学生ADD CONSTRAINT CKS1 CHECK(年龄16 AND 年龄80)3)将新生(学号:5020;姓名:伍俊;性别:男;年龄:22;电话:49542784;系编号:D4)的记录插人学生表中,并增加相应的选课记录(“s020”,“C1”,80)。insert into 学生(学号,姓名,性别,年龄,电话,系编号)VALUES(1020,TOM,男,22,13812312312,D4)INSERTinto选
3、课VALUES(1020,C1,80)1020TOM 男2213812312312 D4 NULL4)假设过了一个学年,将所有学生的年龄增加1岁。UPDATE 学生SET 年龄=年龄+1s001王明 男2086824571 D2 NULLs002李勇 男2489454321 D3 NULLs003刘燕 女22NULL D1 NULLs004王萍 女24NULL D1 NULLs005王佳 男2513098765892 D3 NULLs006赵婷 女21null D1 NULL1020TOM 男2313812312312 D4 NULL 事后发现学生王明考试作弊,将其所有成绩改为0分。UPDAT
4、E 选课SET GRADE=0WHERE 学号=(SELECT 学号FROM 学生WHERE 姓名=王明)s001c1 0s001c2 0s001c3 0s001c4 0s001c5 0s002c3 78s002c4 75s004c1 85s005c1 95s005c2 92s005c3 76 学号为“s002”的学生平时表现优异,将其数据库原理成绩增加10分。UPDATE 选课SET 成绩=成绩+10WHERE 学号=s002 AND 课程号=(SELECT 课程号FROM 课程WHERE 课程名称=数据库原理)10000759592由于选修C3课程的人数太少,学校决定暂不开课,删除所有“C
5、3”的选课记录。DELETEFROM SCWHERE CNO=C3课程号c1c2c4c5c4c1c1c2学号为“s004”的学生由于退学,删除该学生及其选课记录。DELETE FROM 选课 WHERE 学号=s004DELETEFROM 学生WHERE 学号=s004select 学号from 选课学号s001s001s001s001s002s005s005三、思考题 1SQL Server 2000提供了哪些基本数据类型?答;数值型,字符型,文本型,日期型,逻辑型,浮点型2SQL Server 2000有哪些方法可用来保证数据的完整性约束?答:主要包括:约束(CONSTRAINT)、规则(RULE)、默认值、允许空属性、标识和触发器(TRIGGER)等。3数据库中一般不允许更改主码数据。如果需要更改主码数据时,怎样处理?只要在每次修改的时候检查一下改过之后的数据在数据库存中是否存在。SQL: SELECT * FROM 表名 WHERE 主键 = 更改过后的值。 4试着删除被参照表中的主码,看看会出现什么样的情况?分析一下系统这么做的原因。 答;导致各基本表的连接出错,破坏了数据的完整性3