目录
9.1 高级启动选项... 1
9.1.1 LOGON.. 2
9.1.2 设置描述文件... 2
9.1.3 START. 4
试验:调用SQL*Plus. 6
工作原理... 6
9.1.4 GUI SQL*Plus的启动选项... 6
9.2 日常使用SQL*Plus. 7
9.3 SQL*Plus命令入门... 8
9.3.1 COLUMN.. 8
9.3.2 DESCRIBE. 9
9.3.3 PROMPT. 11
9.3.4 ACCEPT. 11
9.3.5 SHOW.. 14
9.3.6 VARIABLE. 16
9.4 内建的SQL*Plus HELP. 18
9.4.1 内建HELP. 18
9.4.2 安装HELP. 20
9.4.3 输入新的HELP主题... 20
9.5 使用SQL*Plus缓冲区... 20
9.5.1 设置用户编辑器... 20
9.5.2 使用SQL*Plus进行编辑... 21
9.6 脚本... 23
9.6.1 START,@,@@... 23
9.6.2 HOST命令... 25
9.7 小结... 25
在本意中,我们将要讨论:
- SQL*Plus可以使用的高级启动选项,包括站点描述文件和用户描述文件
- 怎样定制用户的SQL*Plus脚本和输出
- SQL*Plus的HELP命令
- SQL*Plus缓冲
9.1 高级启动选项
打开命令窗口,并且输入命令sqlplus –
C:\Documents and Settings\zhyongfeng>sqlplus -SQL*Plus: Release 9.2.0.1.0 - Production
用法: SQLPLUS [ [<option>] [<logon>] [<start>] ]
其中 <option> ::= -H | -V | [ [-L] [-M <o>] [-R <n>] [-S] ]
<logon> ::= <username>[/<password>][@<connect_string>] | / | /NOLOG
<start> ::= @<URI>|<filename>[.<ext>] [<parameter> ...]
"-H" 显示 SQL*Plus 的版本标帜和使用语法
"-V" 显示 SQL*Plus 的版本标帜
"-L" 只尝试登录一次
"-M <o>" 使用 HTM标志选项 <o>
"-R <n>" uses restricted mode <n>
"-S" uses silent mode
就如用户所见,这里有大量可用选项。我们依次快速讨论它们:
- -或者-H:使用破折号(或者-H)作为启动选项将会告诉SQL*Plus输出版本标题以及使用信息。
- -V:这个选项可以告诉SQL*Plus输出版本标题,以便告诉用户可以知道用户正在运行的SQL*Plus的版本。
- -M <o>:这个选项用于标记。当使用SQL*Plus的时候,用户可以要求工具使用HTML标记输出数据,来代替普通的文本。对于一些用户,这可能是一种从SQL*Plus中方便生成HTML标签数据的方法。
- -R <n>:R代表RESTRICT。通过使用这个选项,用户就能够禁用用来与操作系统进行交互的特定SQL*Plus命令。这里有三个层次,随着编号的增加会有起来越多的限制。限制会禁用如下命令:
- 层次1:EDIT、HOST以及!
- 层次2:EDIT、HOST、!、SAVE、SPOOL、STORE
- 层次3:EDIT、GET、HOST、!、SAVE、SPOOL、START、@、@@、STORE
为了展示这些限制,我们首先来打开一个SQL*Plus会话,输入dir命令:
C:\Documents and Settings\zhyongfeng>sqlplus scott/tiger@newdb
SQL*Plus: Release 9.2.0.1.0 - Production o星期一 4 月 8 11:29:13 2013
Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
Copyright 2013 All Rights Reserved by ZhouYongFeng , http://www.cnblogs.com/yongfeng
连接到:
Oracle9i Release 9.2.0.1.
drop user 用户名 时出现下边错误
ora-01922: CASCADE must bu specified to drop 用户名
drop user 用户名 cascade;
drop user xx :只是删除用户
drop user xx:会删除此用户名下的所有表和视图
本文链接
conn / as sysdba 报错ORA-01012: not logged on
发生原因:关闭数据库是shutdown 后面没有接关闭参数中的任何一个。
nomal --->所有连接都断开时才能关闭;
transactional --->等待事务结束后,主动断开连接;
immediate --->主动断开事务和连接
abort --->立刻关闭数据库,这个操作是危险的,不会同步数据,不触发检查点,回滚段直接清 空,相当于掉电,每次启动都要实例恢复。
所以,数据库关闭很慢,这时我一心急,就直接退出了sqlplus,造成oracle文件被lock,当我再次startup时,操作失败,因为文件依然被锁定状态。报错ORA-01012: not logged on.
后来重启服务,就可以用了,看了oracle的报错解释,更让我费解。虽然问题解决了,但是生产环境是不能随便down机的,所以,这个问题待续…
kill oracle 进程 或者关掉oracle
ps -ef|grep ora_dbw0_$ORACLE_SID
kill -9 pid
重新启动oracle
sqlplus sys as sysdba
startup;
本文链接