格式化sql语句
在使用 pl/sql developer的sql window时,有时候输入的sql语句太长或太乱,希望能用比较通用的写法格式话一下,这样看起来会好看些,也好分析;
使用方法:选中需要格式化的sql语句,然后点击工具栏的pl/sql beautifier按钮即可。 oralce精简客户端的使用(待测)
要想pl/sql连接oracle,除了pl/sql developer 之外还需要oracle客户端,有一个更方便的方法就是使用oracle精简客户端,很多地方可以下载,文件很小,耗资源也少。安装完成后修改安装目录下的/oracle/ora90/network/admin/tnsnames.ora文件:
格式如下:
database_name =
(description =
(address_list =
(address = (protocol = tcp)(host = 127.0.0.1)(port = 1521))
)
(connect_data =
#(service_name = dealer)
(sid = sid_name)
#(server = dedicated)
)
) 查看执行计划
在使用pl/sql developer的sql window时,有时候输入的sql语句执行的效率,分析下表结构,如何可以提高查询的效率,可以通过查看oracle提供的执行计划;
使用方法:选中需要分析的sql语句,然后点击工具栏的explain plan按钮(即执行计划),或者直接按f5即可。 格式化sql语句
在使用 pl/sql developer的sql window时,有时候输入的sql语句太长或太乱,希望能用比较通用的写法格式话一下,这样看起来会好看些,也好分析;
使用方法:选中需要格式化的sql语句,然后点击工具栏的pl/sql beautifier按钮即可。 执行单条sql语句
在使用 pl/sql developer的sql window时,按f8键,pl/sql developer默认是执行该窗口的所有sql语句,需要设置为鼠标所在的那条sql语句,即执行当前sql语句;
设置方法:pl/sql developer 7.1.2 –>tools->preferences–>window types–>sql window ,勾上“autoselect statement” 即可。 pl/sql developer记住登陆密码
在使用pl/sql developer时,为了工作方便希望pl/sql developer记住登录oracle的用户名和密码;
设置方法:pl/sql developer 7.1.2 ->tools->preferences->oracle->logon history , “store history”是默认勾选的,勾上“store with password” 即可,重新登录在输入一次密码则记住了。 pl/sql beautifier(pl/sql 美化器/格式化)
pld 6以上版本有对dml代码格式化的功能。在sql window或program window中选中部分代码(如果不选则对整个窗口的代码操作),在菜单中选edit -> pl/sql beautifier,得到格式化的代码。对于非法的dml语句或ddl语句,pld将会在下方状态栏提示pl/sql beautifier could not parse text。在缺省的状态下,pld会把dml语句的每一个字段都排在单独的一行,这样不方便查看。在菜单中选edit pl/sql beautifier options,进入preferences窗口,选择edit,进入配置文件编辑界面:在标签栏选dml,在窗口中部的select, insert和update组框中把fit选中,然后点击save,把配置文件保存到pld的安装目录下,点击close关闭。在rules file中输入配置文件所在位置,点击ok,完成配置文件切换。这时再对代码进行格式化,就可以使每一个字段尽可能的在一行上了。 关键字自动大写
tools->preferences->editor,将keyword case选择uppercase。 快捷键定义的位置
选中需要定义的item,然后按一个快捷键组合即可,如果所按的快捷键已有定义,会有提示,这时候cancel,另外选择快捷键组合即可;通常情况下,打开plsql developer后,最经常干的事就是打开sql window和command window,就给这两个操作定义了快捷键, alt+s 和 alt + c,这样拿鼠标点三下的事情只需要按一下键。
设置方法:菜单tools->preferences->user interface->key configuration
注意:如果设置了快捷键不起作用,回到tools -> preferences -> key configuration界面,点击最上方的”default administrator”右边的”…”按钮,在弹出的”preference set”界面中,对”personal preferences”以及下面的”definition”->”description”进行一下设置 自定义object的顺序以及登录后默认自动选中my objec
默认情况下,pl/sql developer登录后,brower里会选择all objects,
如果你登录的用户是dba,要展开tables目录,正常情况都需要wait几秒钟,
而选择my objects后响应速率则是以毫秒计算的。
设置方法: tools菜单 -> object brower filters,会打开define browser filters界面, 选中”my objects”,并勾选 “default” 设为默认即可。
tools菜单 -> object brower folders,会打开define browser folders界面,这里可以把经常用到的几个目录(比如:tables views seq functions procedures)移得靠上一点,并加上颜色区分,这样你的平均寻表时间会大大缩短,试试看。 去掉注释的斜体样式
菜单tools -> preferences -> user interface->editor 在右边的界面中”syntax highlighting”下,去掉”comment”右边的”italic”的勾选. 保存上次登录布局
在window(窗口)菜单中有个save layout(保存版面)项,设置好窗口布局后,选一下此项就保存你当前的窗口布局了,下次启动就不用再设置了 调试存储过程
在使用pl/sql developer操作 oracle时,有时候调用某些存储过程,或者调试存储过程;
调用存储过程的方法:首先,在pl/sql developer左边的browser中选择procedures,查找需要调用的存储过程;然后,选中调试的存储过程,点击右键,选择test,在弹出来的test scrīpt窗口中,对于定义为in类型的参数,需要给该参数的value输入值;最后点击上面的条数按钮:start debugger 或者按f9;最后点击:run 或者ctrl+r 右键菜单
在pl/sql developer(下面简称pld)中的每一个文本编辑窗口,如sql window,command window和porgram window,右键点击某个对象名称,会弹出一个包含操作对象命令的菜单,我们这里称之为右键菜单。
对象类型可以是表,视图,同义词,存储过程和函数等。根据对象类型的不同,弹出的菜单也有区别。表和视图有view, edit, rename, drop, query data 和edit data等功能。view和edit分别是查看和修改表的结构信息,如字段,主键,索引和约束等。query data相当于新打开一个窗口,并执行select * from 表。edit data相当于新打开一个窗口,并执行select * from 表 for update。存储过程和函数有test功能,选中后可以进入调试状态。有时由于pld识别错误,右键点击对象并不能出来正确的菜单,可以在对象所在的 ddl或dml语句的前面,加上分号,这样pld就能正确的判断出对象的类型 select for update
有时我们需要把一些数据导入数据库中,如果用ue拼insert语句,会比较麻烦,而且操作性不强。pld的sql window可以查询,新增,修改和删除表的内容。查询自不必说,而新增,删除和修改,只需在select语句后加入for update,对表进行行级锁定,然后点击窗口的锁型图标,即可进入编辑状态。下面介绍一下如何从excel中提取文本插入到数据库中我们的excel文件中有三列:在数据库中建立临时表:create table t1 (cino varchar2(100), contno varchar2(100), loanno varchar2(100))然后在sql window中输入select t1 for update,并点击锁型鼠标,进入编辑状态:用鼠标点击第一行的输入窗口,这时pld会死锁几秒钟,然后可以见到光标在第一行的输入框中闪动,用鼠标把 cino, contno, loanno选中:进入excel中,把需要插入数据库的内容选中,然后切换到pld,按ctrl + v:点击√,然后再点击commit按钮,则数据提交到表t1中,执行select * from t1可以看到内容: tns names
菜单help->support info->tns names,可以查看oracle的tnsnames.ora。 copy to excel
在sql window中执行select语句,在结果出来以后,右键点击下面的数据区,选择copy to excel,可以把数据区的记录原样拷贝到excel中。但有两点需要注意:一,field中不能以=开始,否则excel会误认为是函数;二,数字不要超过17位,否则后面的位数将会置为0,但可以通过在数字前加‘来使excel认为该field是文本,同时对于数据库中numbe类型的字段,最好用 to_char输出,不然可能会显示不正常 保持上次打开的sql脚本
重新进入pl/sql developer时,window list能打开上次退出时的文档:
1) 将菜单tools->window list选项勾上;
2) tools->perferences->user interface->options的右边,将”autosave desktop”勾选.
3) 退出pl/sql developer重新进入. 快速找到已知表名的表或其他对象
在tools菜单中,勾选上object browser,将对象打开,
双击对象浏览器中的某个对象所处的文件夹,
比如表都是在tables文件夹中,
然后以尽快的速度输入表名,即可找到以你输入的几个字母开头的对象了 快速关闭打开于windows list中的文档窗口
按住shift键,左键点击需要关闭的文档窗口. pl/sql developer中的专用复制(special copy)
如果你正在用 pl/sql developer 写 sql 和 pl/sql 代码,随后你又要在其它工具里使用代码,例如象 3gl 这样的程序设计语言,那么你可能需要把这些代码转换为稍微不同的格式。
让我们假设你已经在 pl/sql developer 里写了并测试了这样一个sql 语句:
select deptno, sum(sal) mgr_sal
from emp
where job = ‘manager’
group by deptno
order by mgr_sal desc
例如,如果你要在borland delphi 里使用这个语句,你可能需要象这样的格式:
sql := ‘select deptno, sum(sal) mgr_sal from emp’ + #13#10 +
‘where job = ”manager”’ + #13#10 +
‘group by deptno’ + #13#10 +
‘order by mgr_sal desc’;
为了这个目的,在pl/sql developer中选中已写好的sql语句,鼠标右键,在弹出的菜单中找到 special copy。这个功能有一个子菜单,它显示了所有被定义的专用复制格式。在选择了格式之后,被转换的代码就被储存在剪贴板上了,这样你就可以粘贴它到相应工具的编辑器里了。
专用复制格式被定义在 pl/sql developer 安装目录下的 specialcopy 子目录里。你可以改变预先确定的复制格式或者添加新的复制格式。仅仅简单地添加一个带有 .copy 扩展名的文本文件就可以了,它包含了一个针对 pl/sql 代码第一行的变量()、一个针对 pl/sql 代码最后一行的变量()和一个针对所有其它行的变量()。下面是一个针对 borland delphi 的例子:
;pl/sql developer specialcopy definition for borland delphi
; for first line
; for all other lines
; for last line
;
sql := ” + #13#10 +
” + #13#10 +
”;
第一行需要为指派到 sql 的变量加上前言,接下来需要有一个 cr/lf 对。最后一行不需要有cr/lf 对,但需要用分号来终止。所有其它行仅仅需要 cr/lf 接在后面。如果 和 都与 一样,你可以忽略它们。在一些语言里,你需要对特定的字符使用换码序列。例如,在 c++ 里,你要对 tab字符(ascii 码为 9)使用 \t 。要定义这些换码序列,请使用 #define 关键词:
#define char(9) = \t
#define \ = \
string(“\n”) +
string(“\n”) +
string(“”);
你还可以使用 “#define compress”来指出你要从结果里移除所有多余的空字符(空格、制表符和换行)。注意,.copy 文件的名字将被包括在菜单里,所以你应该使用描述性的文件名。
22. 在pl/sql developer中复制行记录的简便方法
(1) 单击要拷贝的行记录左边的黑色小三角,该行被选中,右键复制。
(2) 粘贴至记事本里,然后复制刚才粘贴的内容。(该步骤不知何故不能缺)
(3) 单击新记录左边的黑色小三角,右键粘贴即可。
23. 在窗口标题栏内显示文件的完全路径
tools->preferences->user interface->options
勾选”show complete file path in windows titles”
24. 双击即显示表数据
鼠标双击表或者视图时的默认响应实在让我感到失望,因为我最关心的是表结构和数据,但是双击后这两件事情都没有发生,也许默认响应是高手们需要的,但对我来说查看数据和表结构是最主要的,其他的我不关心。不过好的是这是可以设置的,你可以给鼠标双击和拖放绑定需要的事件,比如:双击编辑数据,拖放显示表结构,yeah!
设置方法: 菜单tools -> preferences -> object browser,在右侧,为不同的object type绑定双击和拖放操作。
25. autoreplace自动替换功能
tools->preferences->editor->autoreplace->选上enabled,并edit文件,加入以下内容:
sf=select * from
scf=select count(*) from
s=select
f=from
w=where
d=delete
u=update
i=insert into
v=values