背景
- 系统:win10
- Oracle 11g数据库
- 在cmd窗口中使用已有的用户登录
cmd命令登录
命令格式:
sqlplus 用户名/密码@数据库名
注:我不确定最好那个@后的东西应该叫什么,要是有知道的朋友可以指点一下,在此谢过了
例如:
sqlplus root/123455@orcl
若想作为sysdba
登录,则在最后加上 as sysdba
即可
例如:
sqlplus root/123455@orcl as sysdba
开启DBMS_OUTPUT
开启命令,每次都需要输入
set serveroutput on
如果不想要每次都输入命令开启
output
功能,oracle允许创建一个login.sql
文件,每次启动sqlplus
的时候都会执行这个脚本。还允许设置一个环境变量SQLPATH
这样不论这个login.sql
在哪个目录中,sqlplus
都可以找到它。
使用 login.sql 配置,不需要每次输入命令
1. 创建SQLPATH环境变量
创建一个名字叫做 SQLPATH
的环境变量,位置可以是任意你喜欢的文件夹。例如这里我选择了 D:\Oracle\SQLPATH
2. 创建 login.sql 文件
在你刚配置的 SQLPATH
路径下,创建 login.sql
文件。
login.sql 中的一般配置。(参考《Oracle Database 9i 10g 11g 编程艺术》)
-- 设置sqlplus使用的默认编辑器,可以设置为你喜欢的文本编辑器,如记事本(notepad)
define_editor=vi
-- 默认打开 DBMS_OUTPUT,同时设置缓冲区大小
set serveroutput on size 1000000
-- 脱机输出文本时,会去除两端的空格,而且行宽不定,若设置为OFF(默认),则行宽=设置的linesize值
set trimspool on
-- 设置 LONG 和 CLOB 列显示的默认字节数
set long 5000
-- 设置sqlplus 显示时候文本宽为100个字符
set linesize 100
-- 控制sqlplus多久打印一次标题
set pagesize 9999
-- 设置由 AUTOTRACE 得到的解释计划输出(explain plan output)的默认宽度,a80通常足够放下整个计划
column plan_plus_exp format a80
column global_name new_value gname
set termout off
-- 设置自定义的提示符,这样方便看出来你是谁,你在哪
define gname=idle
column global_name new_value gname
select lower(user) || '@' || substr(global_name, 1, decode( dot, 0, length(global_name),
dot-1) ) global_name
from (select global_name,instr(global_name,'.') dot from global_name );
set sqlprompt '&gname> '
set termout on