网站大量收购独家精品文档,联系QQ:2885784924

数据库系统13--SQL Server 编程课件.ppt

  1. 1、本文档共26页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据库系统13--SQL Server 编程课件

第 13 讲 SQL Server 编程 ;一、游标 1 游标概述; 当写一个应用程序时,基于数据集的操作 会有较好的灵活性. 例如,要将 pubs 数据库中的所有居住在 Menlo Park 的 authors 的 ZIP 代码改变为 94024,则可以用下面的更新语句来进行. UPDATE authors SET ZIP=‘94024’ WHERE city=‘Menlo Park’ 要在数据集上进行各种不同的操作,可以 用两种方法:一是在数据集上进行多个操作; 二是首先得到整个数据集,然后基于它们的值 进行所需要的操作,即基于游标的操作.; 游标操作的最大好处就是可以在一个数据 集中,对某个独立于该集的其他数据行进行条 件操作,即你可以在单行数据上提交 SQL 命 令. 这种处理在复杂的应用程序中有如下好处: ● 提高性能:因为基于数据集的操作比基 于游标的操作需要更多的系统资源. ● 更好的事物控制能力:当处理数据时, 可以控制任何独立于其他行的给定行. ● 提高效率:在一个大的数据集上进行很 多操作时(如调用存储过程), 则数据库逐行 处理数据的效率高于在整个数据集上逐个操作 每个任务, 因为数据是保留在内存缓冲区中的. ; 游标提供了一种对从表中检索出的数据进 行操作的灵活手段,就其本质而言,游标实际 上就是一个指针,它能识别一个集合内的指定 工作行. 游标总是与一条 SQL 语句相关联的, 这是因为它是由结果集和结果集中指向特定记 录的游标位置所组成的. 如果要对一个结果集 进行处理,那么必须要首先声明一个指向该结 果集的游标.; 游标允许应用程序对查询语句 SELECT 返回的行结果中的每一行进行相同或不同的操 作,而不是一次对整个结果集进行同一种操作; 它还提供了针对游标位置而对表中的数据进行 删除和更新的能力;而且,它还把作为面向集 合的数据库管理系统和面向行的程序设计两者 联系起来,使两个数据处理方式得以沟通. ; 使用 SQL Server 游标通常有下面的 5 种状态. ● DECLARE:对于用于查询的游标, SQL Server 首先要使它有效,即在共享的存 储器中创建一个游标定义的??构. ● OPEN:提取游标标识的. ● FETCH:从游标返回数据,这时可以 进行任何需要的操作. ● CLOSE:关闭先前打开的游标,释放 游标结果占据的锁. ● DEALLOCATE:释放 DECLARE 语 句所使用的共享存储器, 而不再允许其他过程 打开这个游标.; 如果要在应用程序中使用游标,需要进行 一下步骤. (1)声明游标. (2)打开游标,提取数据. (3)在游标的当前行进行各种操作(插 入、更新、删除). (4)关闭、释放游标.; ● 声明和打开游标 例: 声明一个只读游标从 pubs 数据库的 employee 表中读取数据. DECLARE cur_employee_readonly CURSOR FOR SELECT emp_id, lname, job_id, pub_id FROM employee ORDER BY emp_id FOR READ ONLY ; 例: 声明一个游标从 pubs 数据库的 employee 表中提取数据. DECLARE cur_employee_scroll SCROLL CURSOR FOR SELECT emp_id, lname, job_id, pub_id FROM employee ORDER BY emp_id 有了 SCROLL 关键字, 就可以在应用中 对行位置进行定位. ; 例: 声明一个更新游标从 pubs 数据库的 employee 表中读取数据. DECLARE cur_employee_update SCROLL CURSOR FO

文档评论(0)

xcs88858 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档