网站导航网学 原创论文 原创专题 网站设计 最新系统 原创论文 论文降重 发表论文 论文发表 UI设计定制 论文答辩PPT格式排版 期刊发表 论文专题
返回网学首页
网学原创论文
最新论文 推荐专题 热门论文 论文专题
当前位置: 网学 > 交易代码 > SQL语法 > 正文

sql知识点总结

论文降重修改服务、格式排版等 获取论文 论文降重及排版 论文发表 相关服务
展。 游标是通过游标库来实现的。游标库是常常作为数据库系统或数据访问 API 的一部分而 得以实现的软件, 用来管理从数据源返回的数据的属性(结果集)。这些属性包括并发管理、在结果集中的 位置、返回的行数, 以及是否能够在结果集中向前和/或向后移动(可滚动性)。 游标跟踪结果集中的位置,并允许对结果集逐行执行多个操作,在这个过程中可能返回至 原始表,也可能不返回至原始表。 换句话说,游标从概念上讲基于数据库的表返回结果集。 由于它指示结果集中的当前位置 ,就像计算机屏幕上的光标指示当前位置一样,“游标” 由此得名。 2,游标有什么作用? ①指定结果集中特定行的位置。 ②基于当前的结果集位置检索一行或连续的几行。 ③在结果集的当前位置修改行中的数据。 ④对其他用户所做的数据更改定义不同的敏感性级别。 ⑤可以以编程的方式访问数据库。 3,为什么避免使用游标? ①在创建游标时,最需要考虑的事情是,“是否有办法避免使用游标?” 因为游标的效率较差,如果游标操作的数据超过1万行,那么就应该改写; 如果使用了游标,就要尽量避免在游标循环中再进行表连接的操作。 4,Oracle游标的类型? ①静态游标:结果集已经确实(静态定义)的游标。分为隐式和显示游标。 ⑴隐式游标:所有DML语句为隐式游标,通过隐式游标属性可以获取SQL语句信息。 ⑵显示游标:用户显示声明的游标,即指定结果集。当查询返回结果超过一行时,就需要一个 显式游标。 ②REF游标:动态关联结果集的临时对象。 5,Oracle游标的状态有哪些,怎么使用游标属性? ①游标的状态是通过属性来表示。 %Found :Fetch语句(获取记录)执行情况 True or False。

  %NotFound : 最后一条记录是否提取出 True or False。 %ISOpen : 游标是否打开True or False。 %RowCount :游标当前提取的行数 。 ②使用游标的属性。 例子:/* conn scott/tiger */ Begin Update emp Set If SQL%Found SAL = SAL + 0.1 Then Where JOB = 'CLERK';

  DBMS_OUTPUT.PUT_LINE('已经更新!'); Else DBMS_OUTPUT.PUT_LINE('更新失败!'); End End; 6,如何使用显示游标,?如何遍历循环游标? ①使用显示游标 ⑴声明游标:划分存储区域,注意此时并没有执行Select 语句。 CURSOR 游标名( 参数 列表) 不是第一条记录。 Open 游标名( 参数 列表); ⑶获取记录:移动游标取一条记录 Fetch Close 游标名 InTo 游标名; 临时记录或属性类型变量; ⑷关闭游标:将游标放入缓冲池中,没有完全释放资源。可重新打开。 ②遍历循环游标 ⑴For 循环游标 循环游标隐式打开游标,自动滚动获取一条记录,并自动创建临时记录类型变量存储记录。 处理完后自动关闭游标。 For 变量名 Loop End Loop; ⑵Loop循环游标 。。。 Loop Fatch Exit End 。。。 例子1: /* conn scott/tiger */ Declare Cursor myCur is select empno,ename,sal from emp; 游标名 InTo When Loop; 临时记录或属性类型变量; 游标名%NotFound; In 游标名 [返回值类型] IS Select 语句; ⑵打开游标:执行Select 语句,获得结果集存储到游标中,此时游标指向结果集头, 而 If;

  数据处理语句;

  vna varchar2(10); vno number(4); vsal number(7,2); Begin open myCur; fetch myCur into vno,vna,vsal; dbms_output.put_line(vno||' close myCur; End; / 例子2:使用loop遍历游标。 /* conn scott/tiger */ Declare Cursor myCur is select ename,job,sal,empno from emp; varE myCur%rowType; Begin if myCur%isopen = false then open myCur; dbms_output.put_line('Opening...'); end if; loop fetch myCur into varE; exit when myCur%notfound; dbms_ou

  • 上一篇资讯: 结构化查询语言(SQL)
  • 设为首页 | 加入收藏 | 网学首页 | 原创论文 | 计算机原创
    版权所有 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
    Copyright 2008-2020 myeducs.Cn www.myeducs.Cn All Rights Reserved 湘ICP备09003080号 常年法律顾问:王律师