易截截图软件、单文件、免安装、纯绿色、仅160KB

初学PL/SQL 游标

1,显示游标的操作
  
(1) 定义游标
      根据查询的数据情况,在PL/SQL块的声明部分定义游标,语法为:
         cursor cursor_name is select_statement;
注意:
     游标必须在PL/SQL块的声明部分进行定义;
     游标定义时可以引用PL/SQL变量,但变量必须在游标定义之前定义;
     定义游标时并没有生成数据,只是将定义信息保存到数据字典中;
     游标定义后,可以使用cursor_name%rowtype 定义变量;
(2) 打开游标
       为了在内存中分配缓冲区,并从数据库中检索数据,需要在PL/SQL块的执行部分打开游标,语法为:
        open cursor_name;
注意:
     只有在打开游标时,才是真正的创建缓冲区,并从数据库检索数据;
     游标一旦打开,就无法再次打开,除非先关闭;
     如果游标定义中的变量值发生变化,则只能在下次打开游标时才起作用;
(3)检索游标
    语法为:
      Fetch cursor_name into variable_list|record_variable;
注意:
   在使用fetch语句之前必须先打开游标,保证缓冲区有数据;
   对游标第一次使用fetch语句时,游标指针指向第一条记录,因此操作的对象是第一条记录。操作完后,游标指针指向下一条记录;
   游标指针只能向下移动,不能回退。
   into子句中变量个数,顺序,数据类型必须和缓冲区中的对应。
由于游标对应的缓冲区中可能有多个记录,因此检索游标的过程是一个循环过程。
(4) 关闭游标
游标对应缓冲区的数据处理完后,应该及时关闭游标,以释放它占用的系统资源。关闭游标的语法为:
  close cursor_name;
例如:根据书名查询对应书的信息,由于查询的结果可能有多个,因此采用游标;
declare
   v_bookname book.bookname%type;
   cursor c_book is select * from book where bookName=v_bookname;
   v_book c_book%rowtype;
 begin
    v_bookname:=&x;
    op


相关文档:

SQL知识大杂烩


$$$为每节的开始
-------------------------------------------------------------------------------------------------------------------------------------------------
$$$ SQL中系统临时表的使用和禁忌 及 Exec(SQLScript) 的使用
以前在SQL 中写SP 时,如比较复杂时,喜欢中间使用临时表来暂存相关记录,这样的 ......

SQL SERVER 视图操作数据库

视图操作
视图是从一个或者多个表或视图中导出的表,其结构和数据是建立在对表的查询基础上的。与真实的表一样,视图也包括几个被定义的数据列和多个数据行,但这些数据实际上是被其引用的其他表中的数据。因此,视图不是真实存在的基础表,而是一个虚拟的表,视图所对应的数据并不实际地以视图结构存储在数据库中,而是存 ......

总结SQLite不支持的SQL语法有哪些


1 TOP
这是一个大家经常问到的问题,例如在SQLSERVER中可以使用如下语句来取得记录集中的前十条记录:
SELECT TOP 10 * from [index] ORDER BY indexid DESC;
 
但是这条SQL语句在SQLite中是无法执行的,应该改为:
SELECT * from [index] ORDER BY indexid DESC limit 0,10;
 
其中limit 0,10表示从第0 ......

SQL 对DateTime (时间和日期)数据类型的基本操作

日期和时间函数对建立一个站点是非常有用的。站点的主人往往对一个表中的数据何时被
更新感兴趣。通过日期和时间函数,你可以在毫秒级跟踪一个表的改变。
返回当前日期和时间
通过函数GETDATE(),你可以获得当前的日期和时间。例如,语句SELECT GETDATE()
返回如下的结果:
…………&h ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号