Heim  >  Artikel  >  Datenbank  >  Oracle使用临时变量

Oracle使用临时变量

WBOY
WBOYOriginal
2016-06-07 16:08:151693Durchsuche

在Oracle数据库中,可以使用变量来编写通用的sql语句,在运行sql语句时,为变量输入值,就会在sql语句中将变量替换成这些值。

在Oracle数据库中,可以使用变量来编写通用的sql语句,在运行sql语句时,,为变量输入值,就会在sql语句中将变量替换成这些值。

临时变量只在使用它的sql语句中有效,变量值不能保留,临时变量也称为替换变量。在sql语句中,如果在某个变量前面使用了&符号,那么久表示该变量是一个临时变量,执行sql语句时,系统会提示用户为该变量提供一个具体的数据。

例如,在sql*plus中执行以下的命令:
SQL> select * from dept where deptno>&temp;
输入 temp 的值:  30
原值    1: select * from dept where deptno>&temp
新值    1: select * from dept where deptno>30
    DEPTNO DNAME          LOC
---------- -------------- -------------
        40 OPERATIONS    BOSTON
SQL>
也可以使用多个的临时变量,事例如下:


SQL> select &column_name,dname,loc from dept where &column_name>20;
输入 column_name 的值:  deptno
输入 column_name 的值:  deptno
原值    1: select &column_name,dname,loc from dept where &column_name>20
新值    1: select deptno,dname,loc from dept where deptno>20


    DEPTNO DNAME          LOC
---------- -------------- -------------
        30 SALES          CHICAGO
        40 OPERATIONS    BOSTON
在sql语句中,如果希望重新使用某个变量并且不希望重新提示输入,可以使用&&符号来定义临时变量。如下:
SQL> select &&column_name,dname,loc from dept where &&column_name>10;
输入 column_name 的值:  deptno
原值    1: select &&column_name,dname,loc from dept where &&column_name>10
新值    1: select deptno,dname,loc from dept where deptno>10


    DEPTNO DNAME          LOC
---------- -------------- -------------
        20 RESEARCH      DALLAS
        30 SALES          CHICAGO
        40 OPERATIONS    BOSTON

本文永久更新链接地址:

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn