很多时候,我只需要快速连接到Oracle DB,SQLPLUS就可以处理这项工作。
我想,当人们开始使用甲骨文时,他们被告知要做的第一件事就是安装Toad或SQLDeveloper。即使这样,如果您正在执行一些简单的查询,有时您也不想等待这些工具加载。
我有一个在启动shell时运行的脚本,这样我就可以获得更好的体验:
SET pagesize 2000
SET LONG 10000
SET linesize 1000
COLUMN last_name format a20
COLUMN total format 999,999,999
SET feedback ON
alter session set nls_date_format = 'yyyy-mm-dd hh:mi:ssPM';
我在这个例子中修改了我的“列”设置,但基本上,这有助于数据适应屏幕。
设置日期格式确实简化了日期的处理。
当命令窗口在Windows中打开时,我设置了窗口布局属性,以便可以滚动、拥有更宽的窗口等,并为将来的窗口保存设置。
其他人每天都在使用SQL*Plus吗?有什么建议吗?
发布于 2009-09-23 02:54:35
您可以使用rlwrap向sqlplus添加readline支持。像这样运行sqlplus:
$ rlwrap -c sqlplus username@database
现在,向上/向下滚动查看命令历史记录。使用ctrl-r向后搜索历史,等等。这使得sqlplus可以接受。
此外,将此代码添加到您的login.sql中,以将线条大小设置为您的终端的宽度:
HOST echo "set linesize" $(stty -a|head -n1|cut -f7 -d' '|cut -f1 -d';') > .tmp.sql
@.tmp.sql
HOST rm -f .tmp.sql
这两个技巧只在unix上有效。
发布于 2009-09-17 14:36:41
是的,我每天优先使用SQL Plus而不是Toad或SQL Developer (尽管我也使用SQL Developer浏览数据库)。
我的login.sql脚本( SQL Plus会自动运行)中包含以下内容:
1)将默认编辑器(记事本)替换为我选择的一个:
define _editor = "C:\Program Files\TextPad 5\TextPad.exe"
2)让SQL提示符显示数据库名称,这样我就知道自己在哪里(这要感谢Tom Kyte ):
COLUMN global_name new_value gname
SET TERMOUT OFF
SELECT LOWER(USER) || '@' || global_name||CHR(10)||'SQL> ' AS global_name
FROM global_name;
SET SQLPROMPT '&gname'
SET TERMOUT ON
..。加上与您的设置类似的其他设置。
我还发现Tom Kyte的print_table过程非常有用。
发布于 2009-09-17 14:56:41
请记住,我们可以将这些设置放在login.sql脚本中,该脚本将在我们启动SQL时自动运行。Find out more.
巧妙的是,从10g开始,这个脚本在我们每次连接时运行,而不是在我们第一次启动SQL*Plus时运行。
SQL> conn apc
Enter password:
Connected.
Running login script
Session altered.
SQL> conn scott
Enter password:
Connected.
Running login script
Session altered.
SQL>
https://stackoverflow.com/questions/1439203
复制相似问题