Oracle数据库基础及应用 第05章 SQLPlus命令

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

5.3.2 PROMPT命令
• 使用PROMPT命令可以在显示屏幕上输出指定的数据 和空行,这种输出方式非常有助于在脚本文件中向用 户传递相应的信息。 • PROMPT命令的语法形式如下: PRO[MPT][text]; 其中,TEXT表示用于指定要在屏幕上显示的提示 信息,省略TEST则会输出一行空行
关闭PAUSE命令的形式如下: SQL>set pause off
3. SET LINESIZE n选项 使用LINESIZE选项,可以设置SQL*Plus中一行数据 可以容纳的字符数量。n表示每行能够显示的字符数, 取值范围为1—32767,默认值为80。 若是修改系统默认的每行打印80个字符。当 SQL*Plus输出LINESIZE指定数量的字符后,随后的数据 就会折叠到下一行显示,如果用户窗口特别宽,那么 用户就可以设置更宽的LINSIZE,以避免折叠显示 SQL>show linesize Linesize 80 SQL>set linesize 110 Linesize 110
(2)在该窗口中输入用户名称system、口令“admin”, 这里用户口令采用的回显的方式,所以是看不见的。 然后单击“Enter”按钮,则打开Oracle SQL*Plus窗口。 在该窗口中显示SQL*Plus的命令提示符“SQL>”,表 明SQL*Plus已经连接到Oracle 11g,准备接受命令了。
• 在SQL*Plus中,如果输入了很长一段SQL语句后,发现忘记 了该表中的列名,重新再输入会浪费时间。我们可以利用 DESCRIBE命令来解决这个问题。只需要在另一行以“#” 开头,就可在输入SQL语句过程中临时运行一个SQL*Plus命 令。 • 例如,在查询HR.EMPLOYEES表中的数据时,WHERE子句中 忘记了某个列名,可利用上述办法解决,继续加载WHERE 语句中剩余的内容。
• 4.SET TIMING[ON/OFF]选项 该选项用于启动和关闭显示SQL语句执行时间的功 能。在SQL*Plus中运行SQL命令时,不同的SQL命令消 耗的系统时间是不同的。为了查看命令所消耗的系统 时间,可以设置TIMING选项为ON,这时每当执行完 SQL命令,SQL*Plus就会显示该命令所消耗的系统时间。
Set 选项及说明(续)
选 项 set numformat format
set null text set pause{off|on|text} set pagesize{14|n} set recset {wrapped|each|off} set space{1|n} set sqlcase{mixed|lower|upper} set sqlcontinue{>|text} set time{off|on}
5.2 SQL*Plus的运行环境设置
• SQL*Plus运行环境是SQL*Plus的运行方式和查询语句 执行结果显示方式的总称。
• 设置合适的SQL*Plus运行环境,可以使SQL*Plus能够 按照用户的要求运行和执行各种操作。
5.2.1 SET命令选项
• 在Oracle 11g系统中,用户可以使用SET命令来设置 SQL*Plus的运行环境。 • SET命令是SQL*Plus内部命令中最重要、使用频率最高 的命令。 • 使用SET命令的语法格式为: set sysytem_option value
5.1.3退出SQL*P1us
• 用户如果不需要再使用SQL*Plus命令时,想返回到操作系 统,只需在SQL*Plus命令提示符下,输入exit或quit命令, 按Enter键即可。 • 在SQL命令后输入exit 。如:SQL>exit 。如图5-5所示。或 是使用菜单命令,选择“文件”→“退出”命令,也可以 退出SQL*Plus。
Set 选项及说明
选 项 set autocommit {on|off|immediate} set autoprint{on|off} set autorecovery{on|off} 描 述 设置事务处理方式,手动/自动提交 设置是否自动打印变量值 设置为on时,以默认的文件名重做记录, 需要恢复时,使用recover automatic database语句恢复,否则只能用recover database语句恢复 对正常执行完毕的SQL DML语句自动生成 报表信息 定义表示PL/SQL块结束的字符 设置列和列之间的分隔字符,默认为空格 定义命令行区分字符,默认为off。 设置一行中能够显示的总字符数,默认80 为long型数值设置最大显示宽度,默认80 设置每页打印标题前的空行数,默认为1
描 述 设置数字的默认显示格式
设置select语句返回null值时显示的字符串 设置输出结果时是否滚动显示 设置每页打印的行数 显示或打印记录分隔符 设置输出结果中列和列之间的空格数,默 认值为10 设置在执行sql命令之前是否转换大小写 设置命令提示符 设置当前时间的显示
set timing{off|on} set underline{-|c|on|off}
例如,设置PAGESIZE为20后查询HR.EMPLOYEES表, 命令如下: SQL> show pagesize pagesize 14 SQL> set pagesize 20 SQL> select employee_id,first_name,last_name
2 from hr.employees;
set wrap{on|off}
用于启动和关闭显示sql语句执行时间 设置是否在列标题下面添加分隔线
设置当一个数据项比当前行宽时,是否截 断数据项的显示
5.2.2 设置运行环境
• 在Oracle中怎么设置运行环境以及设置后的效果如何, 在这里可以通过具体的示例来进行演示。设置运行环 境中使用频率较高的操作如下所示。 1. SET PAGESIZE n 选项 当执行有返回结果的查询语句时,SQL*Plus首先会 显示用户所选择数据的列名,然后在相应的列名下显 示数据,列名之间的空间就是SQL*Plus的一页。 SQL*Plus的一页多大,可以使用命令SHOW PAGESIZE显示SQL*Plus默认的一页的大小。可以通过使 用PAGESIZE命令来改变这个默认值。
• 6. SET HEADING [ON/OFF] 选项 该选项用于设置是否显示表头信息,ON 表示为显 示,OFF表示为不显示。默认值一般为ON。 执行不显示表头信息命令,例如:
SQL>set heading off
SQL> select job_id,job_title 2 from hr.jobs
当PAGESIZE被设置为20后,SQL*Plus在一页内显 示了17行数据。一页的内容不仅包含查询的数据结果, 还包括表的表头、虚线和空白行等。
2. SET PAUSE选项 如果查询语句返回的结果很多时,以至于无法在SQL*Plus 窗口中一次显示完,这时SQL*Plus输出窗口会快速滚动显示。 这样就需要在窗体上对数据进行缓冲,以存储滚动到屏幕以外 的数据,以便一页一页地查看查询结果。 通过设置环境变量PAUSE为ON来控制SQL*Plus在显示完一 页后暂停显示,直到按“Enter”键后才继续显示下一页数据。 当设置PAUSE命令为ON时,需注意:当提交查询的时候, SQL*Plus会在显示第一页之前就暂停显示。只有按回车键后第 一页的内容才会显示。PAUSE选项还可以设置暂停后显示的字 符串,以便提示用户。默认情况下,是不启用此功能的。如果 想启用它,也可以使用Text参数在该命令后面给出相应的提示 信息。
5.1.2登录数据库命令
• CONNECT命令的作用是连接数据库,若是当前已经有 用户连接了数据库,那么将会中断当前的连接,而使 用该命令指定的用户进行建立新的连接。 • CONNECT命令的语法格式为:
• CONN[ECT] [{<username>/<password> [@<connect_identifier>]/}[as{sysdba/sysoper}] • 其中:username指的是连接数据库的用户名, password指的是密码,如果不省略它们,则会直接登 录到SQL*Plus中;如果省略,可以在启动SQL*Plus之 后再输入连接数据库的用户名和密码。
该命令输出的时间单位是小时:分:秒:毫秒
• 5.SET TIME [ON/OFF]选项 该选项用于在提示符前显示或不显示系统时间。在 SQL*Plus中运行SQL命令时,为了查看系统时间,可以 设置TIME选项为ON,这时每当执行SQL命令,命令符 前就会显示系统时间。 例如: SQL>set time on 该命令执行后,就会在命令提示符前显示当前系统 的时间。再次输入命令SET TIME OFF就会退出该命令, 提示符前就不会显示系统时间了。
3 where rownum<=8;
该命令执行后,数据前的表头信息将不再显示出来。 再次输入命令SET HEADING ON就会重新显示出表头等 信息。
5.3 SQL*Plus定制行为命令
在Oracle 11g数据库系统当中,SQL*Plus还提供了 很多可以定制该工具行为的命令。这些命令包括: DESCRIBE、PROMRT、SPOOL等。
5.1.1启动SQL*P1us
• 在Windows下启动SQL*Plus的步骤是: (1) 在 开 始 菜 单 中 , 选 择 “ 开 始 ” → “ 所 有 程 序 ” → “ Oracle-OraDblog-homel ” → “ Application Development”→“SQL Plus”命令,出现SQL*Plus的登 录窗口
第5章 SQLPlus命令
Baidu Nhomakorabea
5.1使用SQL*P1us
• 在数据库系统中,可以使用两种方式 执行命令:
– 图形化工具
– 使用各种命令 直观、简单、容易记忆;灵活性较差 非常灵活、加深对复杂命令的理解、 完成图形化工具无法完成的工作; 需要记忆具体的命令和语法格式
• 在Oracle 11g系统中,可以使用SQL语句进行访问,实 现查询、插入、修改和删除等操作。 • SQL*Plus是一个通用的、在各种平台上几乎都完全一 致的工具。它既能在Windows机器上使用它,也能在 UNIX、Linux机器上使用它。
5.3.1 DESCRIBE 命令
• 在SQL*Plus的许多命令中,DESCRIBE命令可能是用户使用 最为频繁的命令。
• 作用: – 返回对数据库中所存储的对象的描述; – 列出其各个列的名称以及属性; – 输出PL/SQL块中的过程、函数和程序包的规范。 • DESCRIBE命令的语法形式如下:
DESC[RIBE] object_name;
其中,DESCRIBE可以缩写为DESC, object_name表 示将要描述的对象名称。
• DESCRIBE命令不仅可以描述表、视图的结构,而且还可以 描述PL/SQL对象,如下面通过DESCRIBE命令查看 hr.employees表的结构,如图所示。
5.3.3 SPOOL命令
• SPOOL是SQL*Plus中主要完成以标准输出方式输出SQL*Plus 的命令及执行结果,一般可把查询结果保存到文件中或者 发送到打印机中。当查询语句的结果很多或是要生成一个 报表时,通常会使用此命令以生成一些查询的脚本或者数 据。 • 该命令的语法格式如下: SPO[OL]FILE_NAME [CREATE ] | [REPLACE] | [APPEND] | OFF;
set autotrace {on|off|trace[only]} [ex[lain][statistics] set blockterminator{O|on|off} set colset{_|text} set cmdset{;|c|on|off} set linesize{80|n} set long{80|n} set newpage{1|n|none}
相关文档
最新文档