Oracle prompt、set feedback、set define 详解

1 场景

在咱 “导出数据” 的时候,这三个命令很常见,那他们究竟是啥意思呢?

1.1 基础数据准备

CREATE TABLE person(
  person_no   VARCHAR2(10),
  person_name VARCHAR(10),
  sex         VARCHAR2(5),
  birthday    DATE
);

INSERT INTO person(person_no, person_name, sex, birthday)
VALUES('1', '小游子', '男', to_date('1995-07-08', 'YYYY-MM-DD'));

INSERT INTO person(person_no, person_name, sex, birthday)
VALUES('2', '小优子', '女', to_date('1994-12-08', 'YYYY-MM-DD'));

执行结果:
在这里插入图片描述

1.2 导出数据

在这里插入图片描述
导出结果:

prompt Importing table person...
set feedback off
set define off
insert into person (PERSON_NO, PERSON_NAME, SEX, BIRTHDAY)
values ('1', '小游子', '男', to_date('08-07-1995', 'dd-mm-yyyy'));

insert into person (PERSON_NO, PERSON_NAME, SEX, BIRTHDAY)
values ('2', '小优子', '女', to_date('08-12-1994', 'dd-mm-yyyy'));

prompt Done.

2 prompt

  • 提示信息,用来显示 prompt 后面的信息
SQL> prompt I Love You
I Love You

SQL> prompt 我也好中意你
我也好中意你

3 set feedback

  • 默认的,当一个 sql 语句发出的时候,Oracle 会给一个反馈。
    • 比如:建表成功的时候,命令行会返回 Table created
    • 又或者 向表中插入 1 条数据的时候,命令行会返回 1 row inserted 等等。
-- 默认开启
set feedback on 

-- 当载脚本中运行很多语句的时候,如果将每一条信息都反馈出来,则显得太乱。
-- 这时可以执行这个命令,将 feedback 设为 off,以关闭反馈信息。
set feedback off  

-- 当一条 sql 语句返回大于等于 n 行记录的时候,则反馈,反之,不反馈。
set feedback n

4 set define

  • pl/sql 中默认的 "&"表示替代变量,也就是说,只要在命令行中出现该符号,pl/sql 就会要你输入代替值。
  • set define 就是用于该功能的控制
-- 默认开启
set define on

-- 设置关闭
set define off

-- 新的替代变量 *(任意),默认的是 &
set define *
发布了71 篇原创文章 · 获赞 38 · 访问量 4万+

猜你喜欢

转载自blog.csdn.net/qq_34745941/article/details/104472901