1.查当前会话所在的schema
select SYS_CONTEXT('USERENV','CURRENT_SCHEMA') CURRENT_SCHEMA from dual;
2.切换schema为scott
alter session set current_schema=scott;
3.关于declare 、variable、define 声明变量
3.1 pl/sql程序都是以块(BLOCK)为基本单位,整个pl/sql块分为3部分:
声明部分(用declare开头)
执行部分(以begin开头)
异常处理部分(以exception开头)
即:declare出现在声明部分,在这部分可以声明pl/sql程序块中所用到的变量、常量和游标等。需要注意的是:在某个pl/sql块中声明的内容只能在当前块中使用,而在其他pl/sql块中是无法引用的。
3.2 variable 简称var 即:绑定变量【绑定变量只是在当前session中有效】
绑定变量主要是在sql中使用,达到sql解析一次,执行多次,从而提高效率的目的。
3.2.1. 绑定变量在sql和plsql中直接引用必须加前缀 :。如要引用绑定变量a,则是 :a。
3.2.2. 在真正运行的PLSQL程序中,比如自动运行,有自己的一套机制。
3.2.3. 初始化和应用绑定变量,初始化定义的绑定变量,可以使用过程和函数,其中过程可以内部给绑定变量赋值、也可以参数是绑定变量,参数模式为out返回。
使用函数和过程差不多,还可以使用call 函数来赋值,另外还可以使用SQLPLUS中的execute命令直接赋值,多个绑定变量用分号隔开。
3.2.4. 注意NULL值不可赋值给绑定变量,这在NDS中也成立。3.3 define即:host变量 【host变量只是在当前session环境中有效】
host变量启用和关闭的命令是:set define on和set define off
4.