小小总结oracle

1) select 语句的基本作用是什么?

 

   检索表单中的数据

 

2) 比较内连接和外连接

 

   内链接是指满足条件的的连接操作, 也就是通常所说的连接操作。在内连接的检索结果中, 都是满足连接条件的数据。

 

   因此, 内连接的检索结果都是笛卡尔积中满足连接条件的子集。

  

   语法形式:

           select column_list

 

           from table_name [inner]

 

           join table_name2

 

           on join_condition;

 

   当表中的数据不满足条件,而又要出现在检索的结果中, 这时就要使用外连接

 

   外连接的特点:

 

               某些不满足条件的数据也可以出现在检索的结果中;

 

       又可分为:

 

                左外连接 右外连接 全外连接

 

      全外连接:

 

               如果左表和右表中不满足连接的条件都出现在结果中

 

3)比较子查询和连接查询

 

   在多数的请况下, 子查询可以通过连接查询来代替。 连接查询的效率要远高于子查询的效率, 但是子查询更容易理解;

 

   子查询分为两种:

 

                 相关子查询和不相关子查询,顾名思义,相关子查询不能独自运行,必须依赖于外部父查询提供某些值才能运行.

 

   子查询的规则:

 

               1. 子查询必须使用括号括起来, 否则无法判断子查询的开始和结束

 

               2. 子查询中不能包括 order by 子句

 

               3. 子查询允许多层嵌套, 最多255

 

    子查询可分4类:

                  1.单行查询:

 

                            子查询只返回单行单列的数据, 即返回一个常量 

 

                  2.多行子查询:

 

                            子查询返回多行多列的结果, 即返回一系列的值

 

                  3.多列子查询:

 

                              子查询返回多列的结果

 

                  4.关联子查询:

 

                               子查询语句引用外查询语句中的一个列或多个行, 即外查询和内查询是相互关联的。

 

 

4)简述标准变量和复合变量之间的区别?

 

  标准变量变量每一次只能储存一个值,而复合变量可以一次存储多个值。

  符合变量:

           自定义变量:

                       根据用户需要定义变量

           %rowtype类型:

                         根据表结构,有系统决定其结构

  

5)使用显示游标的步骤?

 

1.       定义游标 2. 打开游标 3. 提取游标 4. 关闭游标

 

6)简述如何处理用户自定义异常?

   

在实际的应用中, 程序员可以根据具体的业务逻辑规定自定义一个异常,

当用户操作违反了业务逻辑的规则, 就会引发一个异常。

7)描述游标的各个属性?

 

   %found 是布尔类型, 如果sql 语句至少影响到一行数据, 返回true 否则返回false

   %notfound 是布尔类型 %found相反;

   %isopen 是布尔类型, 当游标打开 返回true 否则返回false

   %rowcount 数字类型, 返回sql 影响的行数

 

8)说明使用游标for 循环如何对游标进行处理?

 

   游标for 循环是显示游标的一种快捷使用方式,他使用for 循环依次读取结果集中的数据。当for 开始时, 会自动打开(游标不需要open), 每一次循环会自动读取游标当前的行的数据,(不需要fetch 提取), for 循环退出时,游标会自动关闭(不需要close);

 

9)如何处理非预定义异常?

 

   首先,为非预定义异常进行命名(pragma exception_init

   然后,就可以像对待系统异常一样对其进行处理。

 

10)非预定义异常有何作用?

 

1.    和业务数据相关的各种情况用自定义异常来处

2.    在抛出ORACLE预定义异常之前先抛出自己定义的非预定义异常,可以

节约异常定位的时间,比如说很多情况都最终导致同一种预定义异常情况下。

 

11.隐式游标和显示游标到底什么区别?

 

  显式游标使用的是SELECT叙述,被声明于任何一个区块的声明段落中,开发者可以控制几乎所有与游标有关的操作。
显示游标对游标的处理提供了其他类似的游标无法做到的控制。他们要使用一次会传回多余一笔记录的SELECT叙述。
虽然他们提供了比隐式游标更多的控制,但也需要额外的步骤来操作。


PL/SQL
为所有SQL数据操作语句(包括返回一行的SELECT)隐式声明游标,称为隐式声明游标的原因是用户不能直接命名和控制此类游标。当用户在PL/SQL中使用数据库操作语言(DML)时,Oracle预定义一个名为SQL的隐式游标,通过检查隐式游标的属性可以获取与最近执行的SQL语句相关的信息。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值