数据库综合实验

上传人:y****3 文档编号:12930458 上传时间:2020-06-03 格式:DOC 页数:35 大小:10.18MB
返回 下载 相关 举报
数据库综合实验_第1页
第1页 / 共35页
数据库综合实验_第2页
第2页 / 共35页
数据库综合实验_第3页
第3页 / 共35页
点击查看更多>>
资源描述
.数据库原理及应用- SQL Server 2000 陈学进 于 2010年三月实验指导书 实验一 用E-R图设计数据库1. 实验目的1) 熟悉E-R模型的基本概念和图形的表示方法。2) 掌握将现实世界的事物转化成E-R图的基本技巧。3) 熟悉关系数据模型的基本概念。4) 掌握将E-R图转化成关系表的基本技巧。2. 实验内容1) 根据需求确定实体,属性和联系。2) 将实体,属性和联系转化为E-R图。3) 将E-R图转化为表。3. 实验步骤1) 设计能够表示出班级与学生关系的数据库。确定班级实体和学生实体的属性。确定班级和学生之间的联系,给联系命名并指出联系的类型。确定联系本身的属性。画出班级与学生关系的E-R图。将E-R图转化为关系模式,写出各关系模式并标明各自的主码或外码。2) 设计能够表示出顾客与商品关系的数据库。确定顾客实体和商品实体的属性。确定顾客和商品之间的联系,给联系命名并指出联系的类型。确定联系本身的属性。画出顾客与商品关系的E-R图。将E-R图转化为关系模式,写出表的关系模式并标明各自的主码或外码。3) 设计能够表示学校与校长关系的数据库。确定学校实体和校长实体的属性。确定学校和校长之间的联系,给联系命名并指出联系的类型。确定联系本身的属性。画出学校与校长关系的E-R图。将E-R图转化为关系模式,写出表的关系模式并标明各自的主码或外码。4) 设计能够表示出房地产交易中客户,业务员和合同三者之间关系的数据库。 确定客户实体,业务员实体和合同实体的属性。确定客户,业务员和合同三者之间的联系,给联系命名并指出联系的类型。确定联系本身的属性。画出客户,业务员和合同三者关系E-R图。将E-R图转化为关系模式,写出表的关系模式并标明各自的主码或外码。5) 学生之间相互交流各自设计的数据库。实验二 确定表中的关键字1. 实验目的1) 正确理解候选关键字,主关键字,组合关键字,外关键字的基本概念。2) 能够正确判断给定的表中各种类型的关键字。3) 在设计数据库时能正确指定各种类型的关键字,知道如何实施数据完整性。2. 实验内容1) 复习候选关键字,主关键字,外关键字,组合关键字以及数据完整性的基本概念。2) 在给出的部门表和员工表中能正确标识出各种类型的关键字。3. 实验步骤1) 写出候选关键字,主关键字,组合关键字,外关键字,实体完整性,域完整性,参照完整性的定义。已知部门表和员工表分别见表2-1和表2-2 表2-1部门表部门代码部门名负责人地点0001生产部李华江浙江杭州0002销售部张丽浙江宁波0003市场部王欣浙江温州 表2-2员工表员工代码姓名家庭住址联系电话邮政编码部门代码200001王华杭州869609863100060001200002李想富阳854387693100100003200003张丽杭州678935423100170002200004李华江萧山8284987331010100012) 确定部门表和员工表中的候选关键字,并陈述理由。3) 选择部门表和员工表的关键字。4) 在部门表和员工表的结构中标注主关键字。5) 在员工表中确定可能的组合关键字,并陈述理由。6) 确定在部门表和员工表中共有的属性。7) 指出哪个表中的属性是外关键字。8) 确定哪个表是主表,哪个表是从表。9) 部门表和员工表是如何通过关键字实施数据完整性的。实验三 关系规范化1. 实验目的1) 了解函数依赖的基本概念。2) 能正确判断某一关系是属于第几范式。3) 掌握规范化范式的方法。2. 实验内容1) 复习函数依赖,数据规范化,范式的基本概念以及各级范式的判别标准。2) 判断给定的表满足哪级范式的条件。3) 将给定的表转换成满足特定等级范式条件的表。3. 实验步骤1) 写出函数依赖,数据规范化,范式的定义以及各级范式的判别标准。2) 有表3-1所示的项目表1,判断其是否满足第一范式的条件,并说明理由。表3-1 项目表1项目代码职员代码部门累计工时间P27E101系统集成部90P51101P2060P27E305销售部109P2298P51E508行政办公室NULLP27723) 有表3-2所示的项目表2,判断其是否满足第二范式的条件,并说明理由。 表3-2 项目表2项目代号职员代码部门累计工作时间P27E101系统集成部90P27E305财务部10P51E508行政办公室NULLP51E101系统集成部101P20E101系统集成部60P27E508行政办公室724) 有表3-3所示的职员表,判断其是否满足第三范式的条件,并说明理由。 表3-3 职员表职员代码部门部门负责人代码E101系统集成部E901E305财务部E909E402销售部E909E508行政办公室E908E607财务部E909E608财务部E9095) 有表3-4所示的项目表3,判断其是否满足第三范式的条件,并说明理由。 表3-4 项目表3项目代码职员代码职员姓名累计工作时间P2E1李华玉48P5E2陈家伟100P6E3张勤15P3E4谢成权2505P5E4谢成权75P5E1李华玉406) 将项目表1转换成满足第一范式条件的表。7) 将项目表2转化成满足第二范式条件的表。8) 将职员表转换成满足第三范式条件的表。9) 将项目表3转换成满足BCNF条件的表。10) 非规范化数据带来的不利影响是什么?实验四 创建SQL Server 2000数据库和表1. 实验的目的1) 熟悉企业管理器环境。2) 掌握创建数据库和表的操作。2. 实验内容1) 熟悉SQL Server 2000 企业管理器环境。2) 创建XSCJ数据库。3) 在XSCJ数据库中创建学生情况表XSQK,课程表KC,学生成绩表XS_KC。4) 在XSQK、KC、XS_KC表中输入数据。3. 实验步骤1) 启动SQL Server企业管理器,打开“SQL Server Enterprise Mananger”窗口,并在左边的目录树结构中选择“数据库”文件夹。2) 选择“操作”菜单中的“新建数据库”命令,打开 “数据库属性” 对话框,并在 “名称”框内输入数据库名称XSCJ。3) 单击“确定”按钮,完成XSCJ数据库的创建。4) 打开刚才创建的 “XSCJ” 文件夹,并在“SQL Server Enterprise Mananger”窗口的右边窗口中选择“表”对象。5) 选择“操作”菜单中的“新建表”命令,打开SQL Server的表编辑器窗口。 6) 根据表4-1所示的表结构增加新列。 表4-1 学生情况表XSQK的结构列名数据类型长度是否允许为空值默认值说明学号Char6N主键姓名Char8N性别Bit1N男1,女0出生日期smalldatetime4N专业名Char10N所在系Char10N联系电话char11Y7) 点击快捷工具栏上的快捷按钮,在弹出的“选择名称”对话框中输入表名XSQK,然后单击“确定”按钮,关闭表编辑器窗口,完成新表的创建。8) 打开“表”对象,在“SQL Server Enterprise Manager”窗口的右边窗口中选择刚才创建的“XSQK”表。9) 选择“操作”菜单中的“打开表”子菜单下的“返回所有行”命令,打开表的数据记录窗口。10) 输入的学生情况数据记录见表4-2。学号姓名性别出生日期专业所在系联系电话020101杨颖01980-7-20计算机应用计算机88297147020102方露露01981-1-15计算机应用计算机88297147020103俞奇军11980-2-20信息管理计算机88297151020104胡国强11980-11-7信息管理计算机88297151020105薛冰11980-7-29水利工程水利系88297152020201秦盈飞01981-3-10电子商务经济系88297161020202董含静01980-9-25电子商务经济系88297062020203陈伟11980-8-7电子商务经济系88297171020204陈新江11980-7-20房建水利系88297171 表4-2 学生情况记录11) 同理建课程表KC,表的结构见表4-3所示,表的内容见表4-4所示。表4-3 课程表KC的结构列名数据类型长度是否允许为空值默认值说明课程号Char3N主键课程名Char20N教师Char10开课学期Tinyint1只能1-6学时Tinyint160学分Tinyint1N 表4-4 课程表记录课程号课程名教师开课学期学时学分101计算机原理陈红2453102计算方法王颐3453103操作系统徐格2604104数据库原理及应用应对刚3755105网络基础吴江江4453106高等数学孙中文1906107英语陈刚1906108VB程序设计赵红韦3705 12) 同理建成绩表XS_KC,表的结构见表4-5所示,表的内容见表4-6所示。表4-5 成绩表XS_KC的结构列名数据类型长度是否允许为空值默认值说明学号Char6N外键课程号Char3N外键成绩Tinyint10-100之间表4-6 成绩表XS_KC的记录学号课程号成绩02010110185020101102870201011078802010210158020102102630201041077602020210355020202108800202031035702020410371实验五 查询数据库1实验目的1) 熟悉SQL Server 2000查询分析器环境。2) 掌握基本的SELECT查询及其相关子句的使用。3) 掌握复杂的SELECT查询,如多表查询、子查询、连接和联合查询。2实验内容1) 启动SQL Server 2000 查询分析器环境。2) 涉及多表的简单查询。3) 涉及多表的复杂查询。3. 实验步骤1) 启动SQL Server查询分析器,打开“SQL查询分析器”窗口。2) 在“SQL查询分析器”窗口中选择要操作的数据库,如“XSCJ”数据库。3) 在KC表中查询学分低于3的课程信息,并按课程号升序排列。 在查询命令窗口中输入以下SQL查询命令并执行: SELECT * FROM KC WHERE KC.学分36) 按学号对不及格的成绩记录进行明细汇总。SELECT 学号,课程号,成绩 FROM XS_KCWHERE 成绩60ORDER BY 学号COMPUTE COUNT(成绩)BY 学号7) 分别用子查询和连接查询,求107号课程不及格的学生信息。用子查询:SELECT 学号,姓名,联系电话 FROM XSQKWHERE 学号 IN( SELECT 学号 FROM XS_KC WHERE 课程号=107AND 成绩60)用连接查询:SELECT 学号,姓名,联系电话 FROM XSQK JOIN XS_KC ON XSQK.学号=XS_KC.学号WHERE课程号=107AND 成绩608) 用连接查询在XSQK表中查询住在同一寝室的学生,即其联系电话相同SELECT A.学号,A.姓名,A.联系电话 FROM XSQK A JOIN XSQK BON A.联系电话=B.联系电话 WHERE A.学号!=B.学号请自已完成以下的查询:9) 查询XSQK表中所有的系名。10) 查询有多少同学选修了课程。11) 查询有多少同学没有选课。12) 查询与杨颖同一个系的同学姓名。13) 查询选修了课程的学生的姓名、课程名与成绩。14) 统计每门课程的选课人数和最高分。15) 统计每个学生的选课门数和考试总成绩,并按选课门数的降序排列。实验六 创建和使用视图1实验目的1) 掌握视图的创建、修改和删除。2) 掌握使用视图来访问数据。2实验内容1) 创建一个简单的视图,查询101号课程不及格的学生信息。2) 修改简单视图,查询107号课程成绩介于70-90的学生信息。3) 使用视图访问数据。4) 删除所创建的视图。3实验步骤1) 启动SQL Server企业管理器,打开“SQL Server Enterprise Manager”窗口。2) 选择要创建视图的数据库文件夹,如“XSCJ”文件夹,并在右边的对象窗口中选择其中的“视图”对象。3) 选择“操作”菜单中的“新建视图”命令,打开SQL Server的视图设计窗口。4) 在“数据源关系图窗口”中单击鼠标右键,打开“添加表”窗口,添加XSQK表和XS_KC表。5) 选择XSQK表的学号和姓名列,选择XS_KC表的课程号和成绩列,作为视图的显示列。6) 设置学号列的排序类型为升序。7) 设置查询条件:先在课程号行的“准则”列设置条件为“=101”,然后在成绩行的“准则”列设置条件为“=70”,并复制该行,去掉“输出”列中的复选,并修改“准则”列的条件为“=60观察一下显示出来的数据是否有序3) 使用索引优化向导优化索引。索引优化向导可以根据给定的工作负荷,通过使用查询优化器分析该工作负荷的查询。此时为数据库推荐最佳索引组合,而为了记录工作负荷,必须使用SQL事件探查创建一个跟踪记录工作负荷。启动SQL Server事件探查器,打开“SQL事件探查”窗口。选择“文件“菜单中”新建“子菜单下的”跟踪“命令”打开“跟踪属性”对话框,新建一个跟踪。设置跟踪名为“INDEX_TRACE”,把跟踪保存为负荷文件“INDEX_TRACE”。然后单击运行按纽开始跟踪。切换到SQL查询分析器窗口,在其中的查询命令中输入以下SELECT查询语句: SELECT A.学号,A.姓名,D.课程名,C.成绩,A.联系电话FROM XSQK A JOIN XSQK B ON A.联系电话=B.联系电话JOIN XS_KC C ON A.学号=C.学号 JOIN KC D ON D.课程号=C.课程号WHERE A.姓名=俞奇军 and B.姓名!=俞奇军切换回SQL事件探查起窗口,此时在窗口中列出了刚刚执行的查询语句的跟踪信息。单击快捷工具栏的快捷键按钮暂停跟踪。其中,注意列的含义如下:1CPU列:表示查询所占用的CPU时间,单位为毫秒。2Duration列:表示查询执行的时间 ,单位为毫秒。3Reads列:表示查询所引起服务器执行的物理磁盘读取次数。4Writes列:表示查询所引起服务器执行的物理磁盘写入次数。选择“工具”菜单中的“索引优化向导”命令,打开“索引优化向导”对话框。开始优化索引。切换到SQL事件探查窗口,然后点击快捷工具栏上的快捷按钮继续跟踪。切换到SQL查询分析器窗口,再次执行刚才的SELECT查询语句。切换回SQL事件探查起窗口,此时在窗口中又列出了优化索引执行同样的查询语句的跟踪信息。我们可以看到,优化索引后,读盘次数减少了,执行时间变短了。比较图中两次查询的执行情况,很显然,经过索引优化后,查询性能有了很大的提高。如果全换成大型表,优化效果将更加明显。单击快捷工具栏上的快捷按钮停止跟踪,并关闭“SQL事件探查窗口”。实验八 创建并使用约束和默认值对象1. 实验目的1) 掌握约束的定义和删除操作。2) 掌握默认值对象的定义和删除。2实验内容1) 使用命令删除XSQK表中性别的约束,然后再创建。2) 使用界面方式创建默认值对象,并绑定到列,然后再删除。3实验步骤1)删除并重建XSQK表中性别的约束。打开“SQL 查询分析器”窗口,选择要操作的数据库,如“XSCJ”数据库。在命令窗口中输入以下SQL命令并执行,删除XSQK表中性别列的约束。ALTER TABLE XSQKDROP CONSTRAINT CK_XSQK_性别在命令窗口中输入以下SQL命令并执行,查询创建刚才删除的性别列约束,使性别只能取值为1(表示男)或者0(表示女)。ALTER TABLE XSQK ADD CONSTRAINT CK_ XSQK_性别CHECK (性别=1 OR性别=0)2)定义新的默认值对象。启动SQL Server企业管理器,打开“SQL Server Enterprise Manager”窗口。选择要创建默认值对象的数据库文件夹,如“XSCJ”文件夹,并在右边的对象窗口中选择其中的“默认”对象。选择“操作”菜单中的“新建默认”命令,打开“默认属性”对话框,并输入名称“DFO_出生日期”和值 1980-1-1注意:1980-1-1前后有单引号()括起来,表示其为日期类型。单击“确定”按钮,完成默认值对象的定义。3)将默认值对象绑定到XSQK表的出生日期列。打开“默认”对象,并选中刚才定义的默认值对象DFO_出生日期。选择“操作”菜单中的“属性”命令,打开“默认属性”对话框。单击“绑定列”按钮,打开“将默认值绑定到列”的对话框。单击“确定”按钮,完成到列的绑定。4)使用值对象为新插入行的出生日期列设置值。在对象窗口中选择并打开其中的“表”对象,选中XSQK表。选择“操作”菜单中“打开表”子菜单下的“返回所有行”命令,打开表的数据记录窗口。在表中插入一行新记录,其中出生日期列不填,其值由刚才绑定的默认值对象设定。如果在设置默认值对象属性时,其值前后没有加单引号(),那么在插入出生日期列的默认值时,该值就不会是“1980-1-1”了。关闭数据记录窗口。5)取消绑定并删除默认值对象。选择并打开“默认”对象,选中“DFO_出生日期”默认对象。选择“操作”菜单中的“属性”命令,打开“默认属性”对话框。单击“绑定列”按钮,打开“将默认值绑定到列”对话框。单击“确定”按钮,取消到列的绑定,关闭“默认属性”对话框。选择“操作”菜单中的“删除”命令,打开“除去对象”对话框。单击“全部除去”按钮,确定删除。实验九 实现数据完整性1实验目的1) 掌握域完整性的实现方法。2) 掌握实体完整性的实现方法。3) 掌握参照完整性的方法。2实验内容1) 使用界面方式创建规则对象,并绑定到列,实现域完整性。2) 为表添加一个标识列,实现实体完整性。3) 为两表建立关联,实现参照完整性。3实验步骤1) 实现域完整性启动SQL Server企业管理器,打开“SQL Server Enterprise Manager”窗口。选择要创建规则对象的数据库文件夹,并在右边的对象窗口中选择其中的“规则”对象。选择“操作”菜单中的“新建规则”命令,打开“规则属性”对话框。设置形如“(区号)电话号码”的联系电话格式检查规则,单击“确定”按钮,完成规则对象的定义。打开“规则”对象,并选中刚才定义的规则对象RO_联系电话格式。选择“操作”菜单中的“属性”命令,打开“规则属性”对话框。单击“绑定列”按钮,打开“将规则绑定到列”对话框,完成到列的绑定,关闭“规则属性”对话框。在对象窗口中选择并打开其中的“表”对象,选中XSQK表并打开。在表中分别插入两行新记录,其中一行的联系电话格式为指定的格式,另一行的联系电话格式为非法格式。当插入第一行时,系统成功地插入了新数据行,但无信息返回;而在插入第二行时系统提示错误信息,拒绝接受非法格式的联系电话,从而保证了域完整性。单击“确定”按钮,取消插入,并关闭表的数据记录窗口。2)实现实体完整性在对象窗口中选择并打开其中的“表”对象,选中KC表。选择“操作”菜单中的“设计表”命令,打开表编辑器窗口。添加一个标识列,种子值为1,递增量也为1。点击快捷工具拦上的快捷按钮,完成标识列的添加,然后关闭编辑窗口。选中KC表并打开表的数据记录窗口。可以看到,系统自动为每行的标识列填充了值,并从1开始,依次递增,这样,表中的每一数据行都可以由标识列唯一标识,实现了实体完整性。关闭表的数据记录窗口。3)实现参照完整性在对象窗口中选择打开其中的“表”对象,选中XS_KC表。先择“操作”菜单中的“设计表”命令,打开表编辑器窗口。点击快捷工具拦上的快捷按钮,打开“属性”对话框的“关系”选项卡。为XSQK表和XS_KC表建立基于学号列的关系。选中XSQK表,并选择“操作”菜单中“打开表”子菜单下的“返回所有行”命令,打开表的数据记录窗口。将表中的值为“020101”的学号都修改为“020111”。由于XSQK表中不存在值为“020111”的学号,所以系统提示错误信息,拒绝接受不存在的学号,从而保证了参照完整性。单击“确定”按钮,取消修改,并关闭表的数据记录窗口。实验十 实现存储过程1实验目的1) 掌握用户存储过程的创建操作。2) 掌握用户存储过程执行操作。3) 掌握用户存储过程的删除操作。2实验内容1) 创建带输入参数的存储过程和嵌套调用的存储过程。2) 执行所创建的存储过程。3) 删除所有新创建的存储过程。3实验步骤1) 创建带输入参数的存储过程。启动SQL Server查询分析器,打开“SQL查询分析器”窗口。选择要操作的数据库,如“XSCJ”数据库。在查询命令窗口中输入创建存储过程的CREATE PROCEDURE语句。这里,我们创建一个带输入参数的存储过程proc_XSQK1,其中的输入参数用于接收课程号,默认值为“101”,然后在XS_KC表中查询该课成绩不及格的学生学号,接着在XSQK表中查找这些学生的基本信息,包括学号、姓名、性别和联系电话信息,最后输出。点击快捷工具栏上的快捷铵钮,对输入的CREATE PROCEDURE 语句进行语法分析。如果有语法错误,则进行修改,直到没有语法错误为止。点击快捷工具拦上的快捷按钮,执行CREATE PROCEDURE语句。2) 创建带嵌套调用的存储过程。在查询命令窗口中输入创建存储过程的CREATE PROCEDURE语句。这里,我们创建一个带嵌套调用的存储过程proc_XSQK2。该存储过程也有一个输入参数,它用于接收授课教师姓名,默认值为“王颐”,然后嵌套调用存储过程proc_课程号,输出其所授课程的课程号,接着用此课程号来完成上一部分实验中所创建的存储过程proc_XSQK1的功能。相应的CREATE PROCEDURE语句如下:DECLARE 课程号char(3)-嵌套调用存储过程proc_课程号EXECUTE proc_课程号 授课老师,课程号 OUTPUT-查询指定课程成绩不及格的学生的基本信息SELECT XSQK.学号,XSQK.姓名,XSQK.性别,XSQK.联系电话FROM XSQK ,XS_KCWHERE XS_KC.课程号=课程号AND XS_KC.成绩=0 AND成绩=100)在查询命令窗口中输入并执行以下UPDATE XS_KC语句,查看执行结果。UPDATE XS_KC SET成绩=120WHERE 课程号=108在查询命令窗口中输入执行以下UPDATE XS_KC 语句,查看执行结果。UPDATE XS_KCSET成绩=90WHERE 课程号=108从这部分实验中,我们可以看到,约束优先于触发器起作用,它在更新前就生效,以对要更新的值进行规则检查。当检查到与现有规则冲突时,系统给出错误消息,并取消更新操作。如果检查没有问题,更新被执行,当执行完毕后,再激活触发器。4) 删除新创建的触发器在查询命令窗口中输入DROP TRIGGER 语句,删除新创建的触发器。DROP TRIGGER tri_UPDATE_DELETE_XS_KC点击快捷工具栏上的快捷按钮,删除触发器。*实验十二 实现事务和批1. 实验目的1) 了解事务的ACID属性。2) 掌握事务和批的工作原理。3) 了解事务处理与批处理。2. 实验内容1) 事务处理与批处理的关系。2) 如何把一个事务处理封闭在单个的批处理中。3) 用条件判断结构来实现。3. 实验步骤1) 把事务处理分散写进多个批处理通常不是一个好的设计思想。锁定问题会变得非常复杂,会带来可怕的性能干扰。2) 通常情况下,应该把一个事务处理封闭在单个的批处理中。下面还有一个更好的方法来编写这段程序:BEGIN TRANSACTINONINSERT PUBLISHERS(PUB_ID,PUB_NAME,CITY,STATE)VALUES(“1111”,“JOE AND MARYS BOOKS”,“NOTRTHERN PLAINS”,“IA”)IF ERROR=0BEGIN PRINT PUBLISHER INSERT WAS SUCCESSFUL CONTINUING。 UPDATE TITLES SET PUB_ID=1111 WHERE PUB_ID=1234 DELETE AUTHORS WHERE STATE=CACOMMIT TRANSACTIONENDELSEBEGIN PRINT PUBLISHER INSERT FAILEDROLLING BACK TRANSACTION ROLLBACK TRANSACTIONEND这个例子中最重要的一点在于事务处理属于一个简单的批处理了。*实验十三 检测死锁1实验目的1) 了解死锁的类型和其兼容性。2) 了解死锁发生的情况。3) 了解可锁定的资源。4) 了解死锁的一般处理过程。2实验内容1) 锁与并行查询执行相关的资源。2) 如何查看进程信息。3) 如何查看锁/对象信息。4) 如何处理死锁。3实验步骤1) 构造死锁,让锁现象发生。先构造一个可能造成锁表的代码如下:BEGIN TRANSACTIONINSERT publishers (pub_id,pub_name,city,state)VALUES(“1111”,“Joe and Marys Books”,“Notrthern Plains”,“IA”)IF ERROR=0BEGIN PRINT Publisher insert failedrolling back transaction ROLLBACK TRANSACTIONEND下面的代码对同一个表执行简单的查询操作,具体代码如下:select * from titles;2)处理死锁的一般过程或步骤。Sp_who:提供关于当前Microsoft SQL Server用户和进程信息。如:列出全部当前进程。在SQL查询分析器的命令窗口中输入sp_whosp_lock:报告有关锁的信息在SQL查询分析器的命令窗口中输入sp_lock spid1=从sp_who中查出的进程标识号在企业管理器中打开“管理”文件夹下的当前活动,查看进程信息。实验十四 实现安全管理1实验目的1) 了解SQL Server 2000 的身份验证方法。2) 掌握合法登录帐户的设置。3) 掌握数据库用户的设置。4) 掌握数据库角色的设置。5) 掌握用户的权限管理方法。2实验内容1) Windows和SQL Server2000身份验证的比较。2) 设置登录帐户。3) 设置数据库用户。4) 设置数据库角色。5) 设置数据库用户权限。3实验步骤1) 使用企业管理器选择和设置身份验证模式 打开企业管理器,在“树”窗口中展开一个服务器组,然后选择希望设置身份验证模式的服务器。 在该服务器上单击鼠标右键,在弹出的菜单中选择命令“属性”,打开“属性”对话框。 在属性对话框中选择“安全性”选项卡,在“身份验证”区域中选择下列身份验证模式之一。 SQL Server和Windows:指定用户可以使用SQL Server身份验证和Windows身份验证连接到SQL Server。 仅Windows:指定用户只能使用Windows身份验证连接SQL Server。 单击“确定”按钮,即可完成身份验证模式的选择和设置。 2) 使用企业管理器创建登录账户 打开企业管理器,展开希望创建新的登录的服务器。 展开文件夹“安全性”,在登录节点上单击鼠标右键。 从弹出的菜单中选择“新建登录”,打开“新建登录”窗口。 在“新建登录”窗口的“常规”选项卡中进行如下配置: 在“名称”文本框中输入一个SQL Server登录的账号名。 选择一种登录模式。 在“默认设置”区选择连接时默认的数据库XSCJ和语言。 在“新建登录”窗口的“数据库访问”选项卡,选择允许登录账户访问的数据库和分配给登录账户的数据库角色。 单击“确定”按钮,完成登录模式的创建。3) 使用企业管理器新建数据库用户 打开企业管理器,在树形目录中展开指定的数据库节点。 选中该数据库节点的下一级节点“用户”,单击鼠标右键,在弹出的菜单中选择“新建数据库用户”。4) 使用企业管理器创建数据库角色 打开企业管理器,在树形目录中展开指定的数据库节点。 选中该数据库节点的下一级节点“角色”,单击鼠标右键,在弹出的菜单中选择“新建数据库角色”。 在弹出的“数据库角色属性-新建角色”对话框中,进行如下操作: 输入名称:输入新建数据库角色的名称 选择角色类型:选择标准角色 添加用户:单击“添加”按钮向角色中添加用户 单击“确定”按钮,完成数据库角色的创建。 设置该数据库角色的权限。5) 使用企业管理器管理对象权限 打开企业管理器,展开指定的数据库节点。 选中需要查看或修改权限的数据库对象,展开该库对象,在其中某一张表上单击鼠标右键,选择菜单命令“属性”,打开“表属性”对话框。 在“表属性”对话框中单击“权限”按钮,打开权限选项卡,选择相应的访问权限。 :授予权限,表示允许某个用户或角色对一个对象执行某种操作。 :禁止权限,表示在不撤销用户访问权限的情况下,禁止某个用户或角色对一个对象执行某种操作。空:剥夺权限,表示不允许某个用户或角色对一个对象执行某种操作。 还可以单击一个特定的用户或角色,然后单击“列”按钮,打开“列权限”对话框,将权限控制到字段的级别。 单击“确定”按钮,完成对象权限的设置。实验十五 实现数据转换1实验目的1) 了解DTS的功能。2) 掌握DTS导入、导出服务。3) 了解DTS设计器的功能。2实验内容1) 利用DTS的功能导出数据。2) 利用DTS的功能导入数据。3) 利用DTS设计器导入、导出数据。3实验步骤1) 利用DTS向导导出数据 打开企业管理器,选择“工具”菜单下的“向导”命令,在弹出的窗口中,展开“数据转换服务”,然后选择DTS导出向导。 在“DTS导入/导出向导”的窗口中,选择要复制的数据源,分四部分: 定义数据源的类型,选择“Microsoft OLE DB Provider for SQL Server” 指定数据源所在的服务器 指定登录到服务器的用户的身份验证方式 选择要导出的数据所在的数据库,选择“xscj”数据库 在选择目的窗口中,选择目的数据源的类型和存放位置。数据源的类型选择“Microsoft Excel 97_2000”,文件名取“xscjcopy”,设置完后按“下一步”。 选择要传输的数据的来源,选择时有三种方式: 从源数据库复制表和视图 用一条查询指定要传输的数据 在SQL Server数据库之间复制对象和数据不妨选择“用一条查询指定要传输的数据”,出现查询语句对话框,利用查询生成器生成:SELECT 姓名,课程名,成绩 FROM XSQK JOIN XS_KC ON XSQK.学号=XS_KC.学号 JOIN SC ON SC.课程号= XS_KC.课程号单击“下一步” 保存、调度和复制包数据的传输方式有三种: 立即运行:表示立即执行数据的导入/导出操作。 调度DTS包以便以后执行:可以指定数据传输操作执行的时刻和执行的频度。 用复制方式发布目的数据:表示将目的表用于复制。保存DTS包:表示将定义好的数据传输过程以包的形式保存起来。将上一步中定义好的包以“包1”的形式保存下来,并调度包,设置包执行的时间。2) 同理利用DTS向导向数据库导入数据,将1)题中导出的的数据作为数据源向数据库XSCJ中导入,并取名为XCXC表。3) 利用DTS设计器导入、导出数据 打开企业管理器,在树形目录中展开数据转换服务节点,单击鼠标右键,选择“新建包”,打开DTS设计器,建立如1)中建立的“包1” 在连接工具栏上选择源数据源“Microsoft OLE DB Provider for SQL” 和目的数据源“Microsoft Excel 97_2000”。 在任务工具栏上选择“数据转换任务”,使任务图标的一端连接源数据源,别一端指向目的数据源。 选中任务图标,点击右键,打开“属性”对话框,输入源数据源,目的数据源,转换方式等。 单击“确定”按钮,完成包的建立。 在DTS设计器中单击“执行”按钮,执行包。.
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 临时分类 > 职业技能


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!