PL/SQL DEVELOPER 使用的一些技巧
1,登录后默认自动选中my objects
默认情况下,plsql developer登录后,brower里会选择all objects,如果你登录的用户是dba,要展开tables目录,正常情况都需要wait几秒钟,而选择my objects后响应速率则是以毫秒计算的。
tools菜单 --> object brower filters,会打开brower folders的定单窗口,把“my objects”设为默认即可。
tools菜单--> object brower folders,中把你经常点的几个目录(比如:tables views seq functions procedures)移得靠上一点,并加上颜色区分,这样你的平均寻表时间会大大缩短,试试看。
/*设置方法:tools菜单--brower folders,会打开brower folders的定单窗口,把“my objects”移到最顶端即可。
同理,可以把你经常点的几个目录(比如:tables views seq functions procedures)移得靠上一点,并加上颜色区分,这样你的平均寻表时间会大大缩短,试试看。*/
2,记住密码
这是个有争议的功能,因为记住密码会给带来数据安全的问题。
但假如是开发用的库,密码甚至可以和用户名相同,每次输入密码实在没什么意义,可以考虑让plsql developer记住密码。
位置:tools菜单--preferences--oracle--logon history--store with password
3,双击即显示表数据
plsql developer里鼠标双击表或者视图时的默认响应实在让我感到失望,因为我最关心的是表结构和数据,但是双击后这两件事情都没有发生,也许默认响应是高手们需要的,但对我来说查看数据和表结构是最主要的,其他的我不关心。
不过好的是这是可以设置的,你可以给鼠标双击和拖放绑定需要的事件,比如:双击编辑数据,拖放显示表结构,yeah!
位置:preferences--user interface,在右侧,为不同的object type绑定双击和拖放操作。
4,sql语句字符全部大写
自认为这是个好习惯,信息系统的核心是数据库,系统出问题时最先要查的就是sql语句,怎样在浩瀚的日志中快速找到那条sql语句是件比较痛苦的事情。
sql语句全部大写并不能彻底解决这一问题,但在一堆代码中间找一行全部大写的字符相对容易些,你的眼睛会感谢你。
设置位置在editor里。同时我觉得等宽字符可以减少程序的出错率,所以我所有的工具清一色用courier new,如果某个ide不支持这个字体,我基本上会选择放弃。哈,偶系个满挑惕的家伙。
5,特殊copy
在sql window里写好的sql语句通常需要放到java或者别的语言内,就需要转成字符串并上加上相应的连字符,这一个事不需要再重复做了,在写好的sql上点右键,使用特殊copy即ok!
6,自定义快捷键
plsql developer里预留了很多键让用户自定义,这是件很hight的事情。不像霸道的word,基本上所有的键都已预定义了功能,修改起来很是头疼。
通常情况下,打开plsql developer后,最经常干的事就是打开sql window和command window,就给这两个操作定义了快捷键,alt+s和alt+ c,这样拿鼠标点三下的事情只需要按一下键。
7,其他
快速清空表,truncate table,右键里可以找到。
没搞清楚的两个功能:analyze、valid
7、sql window中根据光标位置自动选择语句
设置方法:preferences --> window types --> sql window,将autoselect statement选中即可。注意,每条语句后面要加分号。
补充:
8、启动plsql developer,window list菜单自动调出
需要两步设置,首先要保存桌面设置,然后勾上window list选项,具体操作如下:
a、在菜单项的tools下的preference选项中的user interface中选择option,在右边对于的autosave desktop中把前面的复选框勾选上。
b、在菜单项的tools下的window list选项勾上。
9、格式化sql(format)
当大家拿到一段较长的sql语句时,想快速查看其中的逻辑,可以放在这个工具里,进行格式化,语句的逻辑也就一目了然了
10、数据库自动检测连接情况
因为数据库每过一段时间不操作,就会自动断开,然后需要自己手动连接,因为网络原因,总会卡在那里。工具提供了检测连接的功能,可以自动连接。
具体设置在tools-preferences-check connection,check connection前面勾选即可。
11、常用的快捷键
其实这些在第6项中都提到,下面是我的习惯设置:
ctrl+tab 切换windows窗口(或者alt+left/right)
alt + n 创建新sql window
alt + c 关闭当前窗口
alt + f 格式化sql
再次补充:
1、右键菜单
在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就能正确的判断出对象的类型
2、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可以看到内容:
3、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,完成配置文件切换。这时再对代码进行格式化,就可以使每一个字段尽可能的在一行上了。
4、tns names
菜单help à support info à tns names,可以查看oracle的tnsnames.ora。
5、copy to excel
在sql window中执行select语句,在结果出来以后,右键点击下面的数据区,选择copy to excel,可以把数据区的记录原样拷贝到excel中。但有两点需要注意:一,field中不能以=开始,否则excel会误认为是函数;二,数字不要超过17位,否则后面的位数将会置为0,但可以通过在数字前加‘来使excel认为该field是文本,同时对于数据库中numbe类型的字段,最好用to_char输出,不然可能会显示不正常
6、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” 即可,重新登录在输入一次密码则记住了。(我的好像不行哦)
7、执行单条sql语句
在使用pl/sql developer的sql window时,按f8键,pl/sql developer默认是执行该窗口的所有sql语句,需要设置为鼠标所在的那条sql语句,即执行当前sql语句;
设置方法:pl/sql developer 7.1.2 -->tools->preferences-->window types ,勾上“autoselect statement” 即可。
7、格式化sql语句
在使用pl/sql developer的sql window时,有时候输入的sql语句太长或太乱,希望能用比较通用的写法格式话一下,这样看起来会好看些,也好分析;
使用方法:选中需要格式化的sql语句,然后点击工具栏的pl/sql beautifier按钮即可。
8、查看执行计划
在使用pl/sql developer的sql window时,有时候输入的sql语句执行的效率,分析下表结构,如何可以提高查询的效率,可以通过查看oracle提供的执行计划;
使用方法:选中需要分析的sql语句,然后点击工具栏的explain plan按钮(即执行计划),或者直接按f5即可。
9、调试存储过程
在使用pl/sql developer操作oracle时,有时候调用某些存储过程,或者调试存储过程;
调用存储过程的方法:首先,在pl/sql developer左边的browser中选择procedures,查找需要调用的存储过程;然后,选中调试的存储过程,点击右键,选择test,在弹出来的test scrīpt窗口中,对于定义为in类型的参数,需要给该参数的value输入值;最后点击上面的条数按钮:start debugger 或者按f9;最后点击:run 或者ctrl+r 。
(具体要调式一个存储过程,请参照操作手册,这个大概说明下应用)。
10、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) ))
11、关键字自动大写
了解一点编程的常识的人都知道,编码风格很重要。在阅读代码方面,保持一致的编码风格,阅读起来比较容易;在执行效率方面,保持一致的编码风格,更有可能被放到共享sql区中,这样就提供了 执行的效率。设置也很简单:tools->preferences->editor,将keyword case选择uppercase。我一般是让关键字大写,其他比如表名、字段名等都是小写。大家都应该养成一种自己的编码习惯,并保持下去。