首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Oracle-PLSQL基础

pl/sql是面向过程的语言。 ? 不同数据库的SQL扩展 PL/SQL 是Oracle数据SQL扩展。 SQL/PL 是DB2数据库的SQL扩展。...T-SQLSQL Server数据库的SQL扩展。 PL/SQL的必要性: 1、提高应用程序的运行性能。 2、模块化的设计思想。 3、减少网络传输量。 4、提高安全性。...---- PL/SQL块 块(block)是pl/sql的基本程序单元,编写pl/sql程序实际上 就是编写pl/sql块。...---- 块结构示意图 pl/sql块由三个部分构成:定义部分、执行部分、例外处理部分。 declear:定义部分是declare开始的,这部分是可选的。定义常量、变量、游标例外、复杂数据类型。...打开游标 open c1;(打开游标,执行查询 即执行游标的查询语句) 取一游标的值 fetch c1 into v_name;( 取一到变量中) 最开始时,游标指向集合的第一条记录,记录返回后

1.7K20
您找到你想要的搜索结果了吗?
是的
没有找到

Oracle之PLSQL学习笔记

PL/SQL块的类:   1、    匿名块:只能存储一次,不能存储在数据库中   2、    过程,函数和包(procedure,function,package):是命了名的PL/SQL块,被存储在数据库中...3、    触发器:是命名的PL/SQL块,被存储在数据库中,当触发某事件时自动执行。..._和数字以外的字符 PL/SQL中的变量   1、    PL/SQL变量     a)  标量型:只能存放单一值     b)  复合型     c)   引用型     d)  LOBx型:存放大数据...2、    游标的分类     a)  隐式游标PL/SQL隐式建立并管理这一游标。     b)  显示游标:由程序员定义并控制,数据库中读出多行数据,并从多行数据中一的处理。   ...d)  如果没有要返回的没有异常   5、    游标中提取数值     a)  语法  i.

1.1K80

PLSQ编程

如果游标查询语句中带有FOR UPDATE选项,OPEN 语句还将锁定数据库表中游标结果集合对应的数据。...PL/SQL 程序不能用OPEN 语句重复打开一个游标。 提取游标数据 就是检索结果集合中的数据,放入指定的输出变量中。...使用for循环来提取游标数据 PL/SQL语言提供了游标FOR循环语句,自动执行游标的OPEN、FETCH、CLOSE语句和循环语句的功能;当进入循环时,游标FOR循环语句自动打开游标,并提取第一游标数据...,当程序处理完当前所提取的数据而进入下一次循环时,游标FOR循环语句自动提取下一数据供程序处理,当提取完结果集合中的所有数据后结束循环,并自动关闭游标。...PL/SQL块,作为数据库对象保存在数据库中。

1.5K10

Oracle数据库学习笔记(七 —— 游标

当在PL/SQL块中执行查询语句(SELECT)和数据操纵语句(DML)时,Oracle会为其分配一个上下文区(Context Area) 游标是指向上下文区的指针,它为应用提供了一种对具有多行数据查询结果集中的每一数据分别进行单独处理的方法...如果游标已经打开,则返回值为TRUE;否则返回FALSE %FOUND 检查是否结果集中提取到数据。...注意: 显示游标PL/SQL 块的声明部分定义查询,该查询可以返回多行 显示游标的操作过程 数据库 ——> (打开游标)——> 得到数据库的内容 ——> 提取(得到变量)——> 关闭游标 示例...exit when emp_cursor%notfound; dbms_output.put_line('第'||emp_cursor%rowcount|| -- 用游标变量获取已经循环的行数...Oracle隐式地打开、提取,并总是自动地关闭SQL游标 隐式游标属性包括 SQL%FOUND、 SQL%NOTFOUND SQL%ROWCOUNT SQL%ISOPEN declare v_empno

91510

PLSQL --> 游标

--================== -- PL/SQL --> 游标 --================== 一、游标的相关概念及特性 1.定义 映射在结果集中某一数据的具体位置,类似于C...返回到目前为止,已经游标缓冲区中提取到数据的行数 二、显示游标应用示例 --例:浏览数据,输入职位,查看每个人工资(使用fetch cursor_name into来提取单行记录) scott...varchar2(10); --定义PL/SQL表类型 4 ename_table ename_table_type; --定义PL/SQL表变量存放游标数据 5 cursor emp_cur...三、使用游标更新记录 通过游标既可以逐行检索结果集中的记录,又可以更新或删除当前游标数据 如果要通过游标更新和删除数据,在定义游标时必须要带有FOR UPDATE子句 格式: CURSOR...--> 游标 PL/SQL -->隐式游标(SQL%FOUND) PL/SQL --> 异常处理(Exception) PL/SQL --> PL/SQL记录 PL/SQL --> 包的创建与管理 PL

98720

PLSQL 游标变量

二、游标变量使用的情形     PL/SQL 存储子程序和各种客户端之间可以使用游标变量来传递查询结果,这是游标变量最主要的作用。...例如,我们把主游标变量传递到嵌套在Pro*C 程序中的PL/SQL 块,游标变量指向的工作区就可以被访问。     如果客户端含有PL/SQL 引擎,那么客户端调用服务器端就不会有什么约束。...OPEN cursor_variable FOR select_statement; 3、结果集检索数据      每次结果集检索一次。.../SQL: SQL Statement ignored 六、使用游标变量注意事项 1、不能在包规范中定义游标变量 2、不能在其它服务器的远程子程序中使用游标变量,不能把游标变量传给通过数据库连接被调用的过程...REF CURSOR适合于只依赖于SQL语句中(不是PL/SQL语句中)变   量的查询 8、不能在联合数组、嵌套表、或者变长数组中存储游标变量 9、如果向PL/SQL传递主机游标变量,不能在服务器检索它

1.3K40

进阶数据库系列(十一):PostgreSQL 存储过程

PL/pgSQL 存储过程,它和 Oracle PL/SQL 非常类似,是 PostgreSQL默认支持的存储过程,下面针对优缺点给大家做了简要分析。 优点 减少应用和数据库之间的网络传输。...所有的 SQL 语句都存储在数据库服务器中,应用程序只需要发送函数调用并获取除了结果,避免了发送多个 SQL 语句并等待结果。 提高应用的性能。...如果加了strict选项,那么查询结果必须是恰好一,否则就会报错。 举个例子,现在在a表中插入数据,表a数据如下。 然后表中查询出name值赋值val。...使用游标的步骤大体如下: 声明游标变量; 打开游标游标获取结果; 判断是否存在更多结果。如果存在,执行第 3 步;否则,执行第 5 步; 关闭游标。...cur_emp,并且绑定了一个查询语句,通过一个参数 p_deptid 获取指定部门的员工;然后使用 OPEN 打开游标;接着在循环中使用 FETCH 语句获取游标中的记录,如果没有找到更多数据退出循环语句

1.6K20

oracle补充

索引 索引是若干数据的关键字的列表,查询数据时,通过索引中的关键字可以快速定位到要访问的记录所在的数据块,从而大大减少读取数据的I/O次数,因此可以显著的提高性能 创建索引的SQL 把下面表中的name.../SQL函数 函数是命名了的、存储在数据库中的PL/SQL程序块。...'; Oracle 游标 游标数据表中取出来的数据,以临时表的形式存放在内存中,在游标中有一个数据指针,在初始状态下指向的是首记录,利用fetch语句可以移动该指针,从而对游标中的数据进行各种操作,...2)将指针指向第一条记录 提取游标数据 fetch 游标名 into 变量1,变量2,……; 关闭游标 close 游标名; 游标属性 游标提供一些属性可以帮助编写PL/SQL 程序,游标属性的使用方法为...fetch test_cur into no,ename;--取出游标中的数据放在no,ename中 while test_cur%found –-游标是否指向下一,指向返回true

3.1K30

Oracle应用实战八(完结)——存储过程、函数+对象曹组

游标 在写java程序中有结果集的概念,那么在pl/sql中也会用到多条记录,这时候我们就要用到游标游标可以存储查询返回的多条数据。...游标可以理解为是PL/SQL中的结果集,我们通过游标可以提取结果集中的每行记录。 ?...LOGIN_DENIED PL/SQL 应用程序连接到 oracle 数据库时,提供了不正确的用户名或密码 NOT_LOGGED_ON PL/SQL 应用程序在没有连接 oralce 数据库的情况下访问数据...PROGRAM_ERROR PL/SQL 内部问题,可能需要重装数据字典& pl..../SQL 系统包 ROWTYPE_MISMATCH 宿主游标变量与 PL/SQL 游标变量的返回类型不兼容 SELF_IS_NULL 使用对象类型时,在 null 对象上调用对象方法 STORAGE_ERROR

1.8K60

PLSQL -->隐式游标(SQL%FOUND)

--=============================== -- PL/SQL -->隐式游标(SQL%FOUND) --=============================== 在PL.../SQL中,游标的使用分为两种,一种是显示游标,一种是隐式游标,显示游标的使用需要事先使用declare来进行声明,其过程包括 声明游标,打开游标游标提取数据,关闭游标。...有关显示游标的使用,请参考:PL/SQL --> 游标 一、隐式游标的定义及其属性 定义 隐式游标则由则由系统自动定义,非显示定义游标的DML语句即被赋予隐式游标属性。...code is executed successful PL/SQL procedure successfully completed 2.SQL游标的综合应用(根据SQL游标的不同属性返回不同的结果...SELECT INTO处理的结果包括两种种情况 查询结果返回单行,SELECT INTO被成功执行 查询结果没有返回PL/SQL将抛出no_data_found异常 查询结果返回多行,PL/SQL

1.3K30

mybatis sql模板中获取参数信息

最近在尝试mybatis sql模板中获取参数信息,期间学习了mybatis内部的一些结构,接下来笔者就向大家分享mybatis相关知识和具体代码实现。...4 sql模板参数获取 经过前三节的分析,我们已经得知sql模板最终存放在Configuration->MappedStatement->SqlSource中。...接下来我们就可以模拟mybatis初始化,然后SqlSource中获取参数信息。 笔者在这里定义了一个枚举类ParamType,用来区分参数类型。...handler); parser.parse(getFieldValue(sqlNode, "text")); // TODO mybatis允许在大括号内标记类型,所以可以大括号内尝试获取类型...handler2); parser2.parse(getFieldValue(sqlNode, "text")); // TODO mybatis允许在大括号内标记类型,所以可以大括号内尝试获取类型

7.7K00

游标--数据

一,游标是什么? 游标是一段私有的SQL工作区,也就是一段内存区域,用于暂时存放受SQL语句影响到的数据。通俗理解就是将受影响的数据暂时放到了一个内存区域的虚表中,而这个虚表就是游标。...2,另外,在Oracle中PL/SQL只能返回单行数据,而游标弥补了这个不足。相当于ADO.NET中的Data table吧。...2,显示游标:由开发人员通过程序显式控制,用于表中取出多行数据,并将多行数据的单独进行处理....四,属性: 属性 注释 %rowcount 受SQL影响的行数 %found Boolean值,是否还有数据 %notfound Boolean值,是否已无数据 %isopen 游标是否打开 当然如果我们想获得隐式游标的属性...Open 打开游标 3 Fetch 取出游标中的一条记录装入变量 4 Close 释放游标           2,当然游标中可以存放一条数据,也可以存放多条数据,后者是我们用游标,前者我们通过PL

79130
领券