SQL 基础--> NEW

    技术2026-04-21  4

    --===============================

    -- SQL 基础--> NEW_VALUE 的使用

    --===============================

     

    通常的使用方法为:

        column column_name new_value var_name

     

        new_value是将所获得的列值赋予到变量名,然后该变量名可以参与后续处理

     

    下面演示new_value的用法

       

        usr1@ORCL> define length="15"      --定义变量length

        usr1@ORCL> set feedback off;       --查询结束时,没有查询结果的记录数信息

        usr1@ORCL> set verify off;         --要求执行SQL语句前不显示使用的变量值

     

        usr1@ORCL> create table tb1(old_col varchar2(&&length));    --创建表tb1,列的长度使用变量length定义

     

        usr1@ORCL> create table tb2(new_col varchar2(&&length));    --创建表tb2,列的长度使用变量length定义

         

        usr1@ORCL> insert into tb1 values('Robinson');              --为表tb1插入记录

     

        usr1@ORCL> commit;

       

        usr1@ORCL> col old_value new_value var_value;               --定义列值保存到变量var_value

       

        usr1@ORCL> select old_col from tb1;                         --查看表tb1的列old_col,此时old_col的值将被赋予给变量var_value

     

        OLD_COL

        ---------------

        Robinson

     

        usr1@ORCL> insert into tb2 values('&var_value');            --此处可以使用变量var_value来赋值

     

        usr1@ORCL> select new_col from tb2;

     

        NEW_COL

        ---------------

     

        Robinson   

     

        usr1@ORCL> drop table tb1;

        usr1@ORCL> drop table tb2;

     

        --下面是多行记录的处理,变量var_value使用最后获得的值作为变量值

            usr1@ORCL> create table tb1(old_col varchar2(&&length));

     

            usr1@ORCL> create table tb2(new_col varchar2(&&length)); 

     

            usr1@ORCL> insert into tb values('Mark');

            usr1@ORCL> insert into tb values('Martin');

     

            usr1@ORCL> col old_value new_value var_value;

            usr1@ORCL> select old_value from tb;

     

            OLD_VALUE

            ---------------

            Mark

            Martin

            usr1@ORCL> insert into tb2 values('&var_value');

            usr1@ORCL> select * from tb2;

     

            NEW_VALUE

            ---------------

            Martin

     

    更多参考:

    有关闪回特性请参考

            Oracle 闪回特性(FLASHBACK DATABASE)

    Oracle 闪回特性(FLASHBACK DROP & RECYCLEBIN)

    Oracle 闪回特性(Flashback Query、Flashback Table)

    Oracle 闪回特性(Flashback Version、Flashback Transaction)

     

    有关基于用户管理的备份和备份恢复的概念请参考:

            Oracle 冷备份

            Oracle 热备份

            Oracle 备份恢复概念

            Oracle 实例恢复

            Oracle 基于用户管理恢复的处理(详细描述了介质恢复及其处理)

           

        有关RMAN的恢复与管理请参考:

            RMAN 概述及其体系结构

            RMAN 配置、监控与管理

            RMAN 备份详解

            RMAN 还原与恢复

           

        有关Oracle体系结构请参考:

            Oracle 实例和Oracle数据库(Oracle体系结构)

            Oracle 表空间与数据文件

            Oracle 密码文件

            Oracle 参数文件

    Oracle 数据库实例启动关闭过程

            Oracle 联机重做日志文件(ONLINE LOG FILE)

            Oracle 控制文件(CONTROLFILE)

            Oracle 归档日志

       

     

    最新回复(0)