1、进行管理。SQL SERVER 配置管理器综合了SQLSERVER 2000 中的服务管理器、服务器网络适用工具和客户端网络实用工具的功能。打开 SQL SERVER 配置管理器工具,单击“SQL SERVER2005 服务”节点,其中的“SQL SERVER”服务就是我们所说的数据库引擎。与SQLSERVER 2000 一样,可以通过这个配置管理器来启动、停止所安装的服务,如“SQLSERVER(MSSQLSERVER)”。3了解RDBMS 系统的体系结构。实验二 交互式SQL一 数据定义(一) 基本表的操作1. 建立基本表例如,建立一个学生表:create table Student(Sn
2、o char(9) primary key,Sname char(20) unique,Ssex char(2),Sage smallint,Sdept char(20) 建立一个课程表:create table Course(Cno char(4) primary key,Cname char(40),Cpno char(4),Ccredit smallint,foreign key (Cpno) references Course(Cno)create table sc(Sno char(9),Cno char(4),Grade smallint,primary key(Sno,Cno),
3、foreign key (Sno) references student(Sno),foreign key (Cno) references course(Cno);2. 修改基本表例如,像student表加一个入学时间列:alter table Student add S_entrance datetimealter table Student alter column Sage intalter table Course add unique(Cname)3. 删除基本表例如,删除已经建立的学生表:drop table Studentdrop table Course(二) 索引操作1.
4、建立索引例如,为学生课程数据库中的student, course, sc 三个表建立索引。其中student表按学号升序建唯一索引,course表按课程号升序建唯一索引,sc表按学生升序和课程号升序建唯一索引:create unique index Stusno on Student(Sno);create unique index Coucno on Course(Cno);create unique index SCno on SC(Sno ASC,Cno DESC)2. 删除索引 例如,删除student表的Stusno索引:drop index Stusname(三) 数据操作一 更新
5、操作1. 插入数据 例如,在student表中插入下列数据:200215125,张立,男,19,IS代码如下insert into student(Sno,Sname,Ssex,Sage,Sdept)values(200215125,张立男,19,IS)插入后,结果如下:在Course表中插入以下数据:1,数据库,5,42,数学,null,26,数据处理,null,24,操作系统,6,37,PASCAL语言,6,45,数据结构,7,43,信息系统,1,4insert into course(Cno,Cname,Cpno,Ccredit)values(1数据库5,4);insert into c
6、ourse(Cno,Cname,Ccredit)values(2数学,2);6数据处理4操作系统,3);7PASCAL语言数据结构3信息系统2.修改数据例如,将学生200215121的年龄改为22岁:update student set Sage=22 where Sno=200215121修改前:修改后:3.删除数据例如,删除学号为200215128的学生记录:delete from student where Sno=200215128删除所有学生的选课记录:delete from sc删除计算机科学系所有学生的选课记录:delete from sc where CS=(select Sd
7、ept from student where student.Sno=SC.Sno )二查询操作1.单表查询例如,查询全体学生的学号与姓名:select Sno,Sname from student再例如,查询全体学生的详细记录 select * from student;查询所有年龄在20岁以下的学生姓名及其年龄。 select Sname,Sage from student where Sage20;查询所有姓刘的学生的姓名、学号和性别。 select Sname,Sno,Ssex from student where Sname like 刘%;2.连接查询例如,查询每个学生及其选修课程
8、的情况:select student.*,sc.* from student,sc where student.Sno=sc.Sno查询每一门课的间接先修课:select first.Cno,second.Cpno from course first,course secondwhere first.Cpno=second.Cno查询每个学生及其选修课程的情况,用外连接来完成。 select student.Sno,Sname,Ssex,Sage,Sdept,Cno,Grade from student left outer join sc on(student.Sno=sc.Sno);3.嵌
9、套查询例如,查询与“刘晨”在同一个系学习的学生。select Sno,Sname,Sdept from student where Sdept in(select Sdept from student where Sname=刘晨);查询选修了课程名为“信息系统”的学生学号和姓名.select Sno,Sname Sno in (select Sno from sc Where Cno in (select Cno from course Cname=);4.集合查询例如,查询计算机科学系的学生以及年龄不及十九岁的学生:Select *Form studentWhere sdept = csU
10、nionFrom studentWhere sage 19三视图操作1.建立视图例如,建立信息系学生的视图: Create view IS_student As Select sno.sname, sage Form student Where sdept = IS 将学生的学号和他的成绩定义为一个视图2.删除视图 例如,删除视图BT_S Drop view BT_S3.查询视图 在信息系学生中找出年龄小于20岁的学生 Select * Form IS_Student Where sage 60) then begin select sno=sno, xf=credit from insert
11、ed update student set sumc=sumc+xf where sno=sno print success end else failend2)在表student中建立删除触发器,实现表student和表sc的级联删除Create trigger sdelete On student instead of delete Delete from sc Where sno in (select sno from deleted) Delete from student4.检查约束和触发器分别向相关表插入若干条记录,检查你设置的完整性约束是否有效:1)插入若干条包含正确数据的记录,
12、检查插入情况2)分别针对设置的各个约束,插入违反约束的数据,检查操作能否进行3)向SC表插入若干行数据,检查触发器能否实现其数据一致性功能。 激活触发器insert into student(sno,sname,sdept) values(010001王林01010002程明insert into sc values (101,80,4)102,87,3),85,4)实验四 数据库安全性 (1)了解SQL Serer数据库系统中数据访问控制的基本方法 (2)了解使用SSMS如何给用户授权(3)熟练掌握常用GRANT和REVOKE进行权限控制(4)验证数据库系统的访问控制使用SQL Server
13、数据库管理系统提供的SSMS和查询编辑器。对上以一实验建立的表进行权限设置,并检查权限控制。(一)使用SSMS的图形界面授权1使用SSMS的图形界面创建登录名(按如下图示)2. 使用ssms图形界面创建数据库用户(按下图所示)3. 使用SSMS的图形界面进行授权,分别设置用户对象的访问权限:(1) 打开属性窗口(2)在属性窗口的“安全对象”中进行设置(二)使用SQL语句设置权限1.创建登录名。 创建SQL server登录名hawk, 其密码为hawk :Create login hawkWith password = hawk 修改登录密码为11 :Alter login hawkWith
14、password = 11 删除帐户hawk :Drop login hawk2.创建数据库用户 使用CREATE USER 语句为新创建的登录名创建用户 :Create user hawkFor login hawk 删除用户操作为 :Drop user hawk3.授权 按上述方法创建两个用户,并对其中一个授予查询、插入和修改的权限,另一个不授权。例如 : Grant select on student To aa Grant insert on student下面检查权限控制分别以两个登录名登录,在查询编辑器中使用SQL语句进行如下操作:已授权用户登录界面如下,1)以授权用户执行一个查询表的操作,检查操作能否进行2)以未授权用户执行一个查询表的操作,检查操作能否进行3)给未授权用户授权后,执行授权的操作,检查操作能否进行4)撤销权限后,检查操作能否进行 REVOKE SELECT ON SC FROM aa实验心得 这次实验做的时间比较长,尤其是第二个实验,我把所有的操作都实践了一遍,做的时候也发现了很多问题,输入时不能出现一点错误,一旦出错,程序将运行不出来。做实验报告时选取了其中的一部分,从中体会到了很多上课体会不到的东西。
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1