继上一篇博客​​Oracle绑定变量学习笔记​​,再写一篇define变量的简单教程


文章目录

1、define常量用法

注意:define常被误解为定义变量,其实不然,define定义的是字符常量,define定义一下常量,然后用&或者&&符号进行引用

环境准备,先建表来实验:

create table t as select * from dba_object;

define一个常量a,然后直接查询用&符号表示

SQL> define a =1;
SQL> select * from t where object_id=&a;

2、&和&&符号用法

  • &符号和&&符号区别
    引用define定义的常量,有两种方法,一直是用&符号,另外一种是用&&符号,其实两者功能是一样的,主要区别是&替换常量一次后,下次调用还是用输入的,而&&替换常量一次后,下次调用就不用输入了,我这里说的替换常量是在不用define的情况,下面举例说明,读者自己实践一下,就明白了

这里不用define定义常量,直接用&和&&符号

SQL> select * from t where object_id = &b;

如图,会提示你输入值
Oracle基础之define用法简介教程_Oracle Define常量

再次调用,还是会提示输入值:
Oracle基础之define用法简介教程_Oracle_02

select * from t where object_id = &&b;

第一次输入会提示:
Oracle基础之define用法简介教程_字符常量_03
第二次输入直接打印出来,不需要输入:
Oracle基础之define用法简介教程_sql_04

  • define字符类型的常量
    如果define定义的字符类型的常量,引用时候要加上单引号
select * from t where object_name = '&a';

Oracle基础之define用法简介教程_sql_05