SQL 操作练习题

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

SQL Server(三级)操作练习题

1数据库运行监控

1.1使用SQL语句实现DMV查询,查找当前挂起的I/O 请求,将结果保存在

“c:\gatDoc\SQL3J2.1.1\2.1.1.doc”文档中。(提示:查询数据库master中的系统

视图sys.dm_io_pending_io_requests和系统函数

sys.dm_io_virtual_file_stats)

1.2以SA身份登录数据库,在Master数据库上执行SQL语句:Select * from

sysobjects 。利用SQL Server Manangement Studio监控数据库服务器,观察每个

登录用户在数据库执行的命令,请在“c:\gatDoc\SQL3J2.1.1\2.1.1.doc”文档内写

出操作步骤,并在该文档内将下列操作界面截屏后保存:阅读进程信息,sa执行

的命令。(提示:启动活动监视器)

1.3打开SQL Server Profiler,建立跟踪,对数据库活动进行监视,同时打开性能监视

器,利用SQL Server: Memory对象监视数据库的一般活动,运行3分钟后,观察

重合时段内SQL Serve的活动和上述性能计数器的值,请在“2.1.1.doc”文档内

写出操作步骤,并在该文档内将下列三个操作界面截屏后依次保存:

1)在SQL Server Profiler中新建跟踪mytrace。

2)在性能监视器中新建SQL Server: Memory计数器。

3)在SQL Server Profiler中查看指定性能计数器的情况。

2数据库备份计划

2.1利用维护计划功能,设置每天1:00自动执行增量备份(差异备份)数据库model

到文件夹C:\Backup,并将操作步骤写在c:\gatDoc\SQL3J2.2.1\2.2.1.doc文档里面,

将下面两个操作界面截屏后依次保存在同一个文档里:

1)设置备份数据库任务的界面

2)维护计划设置完成的界面

2.2利用SQL Server Agent功能(作业功能),创建作业job1,设置每天4:00完成

以下步骤:先删除备份文件c:\gatDoc\SQL3J2.2.1\model.bak,然后对数据库model

进行完全备份,保存为c:\gatDoc\SQL3J2.2.1\model.bak,请在2.2.1.doc文档里写

出操作步骤,并将下面三个操作界面截屏后依次保存:

1)设置删除备份文件的界面

2)设置对数据库model进行完全备份的界面

3)设置作业计划属性的界面

3数据库编程

* 准备:假设目前有一个数据库demo,里面有两个表Supplier、Production,结构如下:

Supplier :

ID int, --供应商编号

Name varchar(25), --姓名

hireDate datetime, --供应日期

type varchar(10), --供应类型

sal numeric(8,2), --补助

MGR int, --所属类型编号

productionID int, --商品编码

Production :

ID int, --商品编码

Name varchar(25), --商品名

price float, --商品价格

number float, --商品种类

练习时请同学自行创建以上数据库和数据表(考试时系统中已经创建好了)。

将下面操作的SQL脚本保存到c:\gatDoc\SQL3J3.1.1\3.1.1.doc文档中。

3.1建立存储过程add_supplier,输入供应商编号、姓名、-供应日期、供应类型、补

助、所属类型编号,向表Supplier插入数据。

3.2建立函数valid_id,根据输入的供应商编号,检查该供应商供应的商品是否少于

10种,如果少于,则返回1,否则返回0。(标量函数)

3.3建立函数get_sal,根据输入的商品名,返回该商品的平均价格。(标量函数)

3.4建立函数get_tab,根据输入的所属类型编号返回该类型的所有供应商信息。(内

联表值)

3.5编写存储过程disp_ supplier,根据输入的所属类型编号,采用游标方式按照下列

格式输出该所有该类型的供应商姓名、供应类型、供应日期。

供应商姓名供应类型供应日期

-------------------------------------------

------------------------(此处为数据)

参考答案:

1.1

select database_id,file_id,io_stall,io_pending_ms_ticks,

scheduler_address

from sys.dm_io_virtual_file_stats(null,null) t1,

sys.dm_io_pending_io_requests t2

where t1.file_handle=t2.io_handle

* 分析:在sys.dm_io_pending_io_requests视图中,记录了挂起的I/O进程情况。这个视图在master数据库中的系统视图中可以找到。另外还用到一个系统函数sys.dm_io_virtual_file_stats(),在下面图中的位置可以找到。

相关文档
最新文档