set 命令用于设置系统变量的值。通过set 命令设置的系统变量有很多,下面把最常用的罗列出来:
1. arraysize
用于从数据库中一次提取的行数,其默认为 15。
SQL> show arraysize;
arraysize 15
SQL> set arraysize 20;
SQL> show arraysize;
arraysize 20
2. autcommit
用于在执行DML语句的时候是否自动提交,默认为 off。当设置为 on 并设置为 n 时,代表执行 n 条语句或者PL/SQL 语句块后自动提交/
1 SQL> show autocommit; 2 autocommit OFF 3 SQL> set autocommit 10; 4 SQL> show autocommit; 5 AUTOCOMMIT ON 用于所有 10 DML 语句
3. echo
当我们使用start/@执行一个脚本的时候,echo 用于控制是否显示脚本文件中正在执行的SQL语句。默认为 off。
1 SQL> show echo; 2 echo OFF
4. feedback
当一个查询结果集至少为 n 行的时候,就会显示结果集返回的行数
1 SQL> show feedback; 2 用于 6 或更多行的 FEEDBACK ON
5. heading
是否显示查询结果的列标题
1 SQL> show heading 2 heading ON
6. linesize
每行显示字符的个数,默认为 80;
1 SQL> show linesize; 2 linesize 80
7. pagesize
设置每页显示的行数,默认值为 14.
1 SQL> show pagesize; 2 pagesize 14
8. serveroutput
用于控制台是否显示 PL/SQL 块或者存储过程的输出,也就是说当我们使用DBMS_OUTPUT.PUT_LINE() 的输出显示在屏幕上。默认值为off。
1 SQL> show serveroutput; 2 serveroutput OFF
9. sqlprompt
用于设置 SQL*Plus 的命令提示符,默认值为 'SQL>'.
1 SQL> show sqlprompt; 2 sqlprompt "SQL> "
10. time
设置是否在SQL*Plus 命令提示符前显示系统当前的时间,默认值为 off。
1 SQL> show time; 2 time OFF 3 SQL> set time on; 4 22:38:55 SQL> show time; 5 time ON
11. timing
用于设置是否显示执行 SQL 语句、PL/SQL 块花费的时间。默认为 off。