如何在Oracle SQL*Plus中设置输出格式使标题仅在顶部显示一次
Oracle SQL*Plus设置表头仅在顶部显示一次的方法
SQL*Plus默认按固定页长分页输出,每一页开头都会重复打印查询表头,要实现表头仅在输出最顶部显示一次,可通过以下方案操作:
- 方案1:调整分页参数(推荐)
分页参数PAGESIZE控制单页可输出的最大行数,将其设置为大于查询结果总行数的数值,整个输出就只会生成1页,表头仅在开头打印一次:- 已知查询结果总行数时,设置为比总行数大2以上的值即可(预留表头、分隔线的行数),示例:
-- 假设查询结果最多有2000行 SET PAGESIZE 2000; - 未知查询结果总行数时,直接设置为SQL*Plus支持的最大值50000,可覆盖绝大多数常规查询场景:
SET PAGESIZE 50000;
- 已知查询结果总行数时,设置为比总行数大2以上的值即可(预留表头、分隔线的行数),示例:
- 方案2:自定义打印表头(适合超大量输出场景)
如果查询结果行数超过50000,调整PAGESIZE也无法避免分页,可关闭默认表头后手动打印自定义表头:-- 关闭系统默认表头输出 SET HEADING OFF; -- 手动打印表头,列间距可自行调整对齐 PROMPT 员工ID 员工姓名 部门ID 入职日期; -- 执行对应查询 SELECT emp_id, emp_name, dept_id, hire_date FROM emp_info;
注意:后续需要恢复默认分页设置时,执行
SET PAGESIZE 24即可(SQL*Plus默认PAGESIZE通常为24,不同版本可能略有差异)。
你当前的输出格式参考:
内容的提问来源于stack exchange,提问作者Foody
相关产品推荐
相关产品推荐

