1.PL/SQL Developer记住登陆密码
这是个有争议的功能,因为记住密码会给带来数据安全的问题。但假如是开发用的库,密码甚至可以和用户名相同,每次输入密码实在没什么意义,可以考虑让PLSQL Developer记住密码。
在使用PL/SQL Developer时,为了工作方便希望PL/SQL Developer记住登录Oracle的用户名和密码;
设置方法:PL/SQL Developer 7.1.2 ->tools->Preferences->Oracle->Logon History , “Store history”是默认勾选的,勾上“Store with password” 即可,重新登录在输入一次密码则记住了。
2.执行单条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” 即可。
3.格式化SQL语句
在使用PL/SQL Developer的SQL Window时,有时候输入的SQL语句太长或太乱,希望能用比较通用的写法格式话一下,这样看起来会好看些,也好分析;
使用方法:选中需要格式化的SQL语句,然后点击工具栏的PL/SQL beautifier按钮即可.
4.查看执行计划
在使用PL/SQL Developer的SQL Window时,有时候输入的SQL语句执行的效率,分析下表结构,如何可以提高查询的效率,可以通过查看Oracle提供的执行计划;
使用方法:选中需要分析的SQL语句,然后点击工具栏的Explain plan按钮(即执行计划),或者直接按F5即可。
5.调试存储过程
在使用PL/SQL Developer操作Oracle时,有时候调用某些存储过程,或者调试存储过程;
调用存储过程的方法:首先,在PL/SQL Developer左边的Browser中选择Procedures,查找需要调用的存储过程;然后,选中调试的存储过程,点击右键,选择Test,在弹出来的Test scrīpt窗口中,对于定义为in类型的参数,需要给该参数的Value输入值;最后点击上面的条数按钮:Start debugger 或者按F9;最后点击:RUN 或者Ctrl+R
6.提交回滚
提交:commit (F10) 回滚:rollback (shift+F10)
7.创建存储过程示列
存储过程 所用函数说明:
功能:求和与差
原形:GetSumAndSub(p1 in number , p2 in number ,m out number , b out number)
参数:m=p1+p2 b=p1-p2
1> 先建存储过程
左边的浏览窗口选择 procedures ,会列出所有的存储过程,右击文件夹procedures单击菜单“new",弹出template wizard窗口, name框中输入 GetSumAndSub ,parameters中填入: p1 in number , p2 in number ,m out number , b out number 。单击ok,右边出现建立存储过程的代码窗口。其中内容为创建存储过程的语句。
2> 在begin end 之间输入具体内容,最后如下;
create or replace procedure GetSumAndSub(p1 in number , p2 in number ,m out number , b out
number) is
begin
m := p1+p2 ;
b := p1-p2 ;
end GetSumAndSub;
3> 单击“保存”按钮,可将创建存储过程的sql语句保存在文件中,作备分之用^_^
4> 接着要做的就是 执行此sql语句来创建存储过程。
方法为:找到工具栏上的“齿轮”图标,鼠标放上面会显示 ‘EXECUTE(F8)',单击之。存储过程此时已经建立完毕。可为什么我在右边的procedures文件夹下看不到此存储过程?刷新一下ok~
5> 测试存储过程
在左边的浏览窗口选中 GetSumAndSub该存储过程,右击选菜单“TEST‘,右边会出现新的测试窗口。
说明:在测试窗口的下面你可以看到有一个参数列表,作输入参数值和查看out型参数值用。在调试代码上方有个工具条:
第一个放大镜形(start debugger),开始调试。
第二个绿色三角形(run),执行。
第三个step into ,单步调试。
进入调试代码窗口后,可随意设置断点,方法就不用说了吧~
a 我们要在参数窗口中输入 两个参数值, p1为11,p2为5, m跟b不用填。
b 点击start debugger,进入存储过程的代码窗口
c 点击step into ,将鼠标放在变量符号上可查看变量值
d 继续点击step into 直到单步运行完毕。此时会返回测试窗口。
e 查看参数列表,验证m,b值为16,6。
在测试窗口点击保存,可保存测试代码。以后重新打开时,你原先输入的那些参数值会保存在其中,免得每次测试都要重新输参数值。
对于返回类型为游标的参数,数据不会直接显示,在列表的参数值框右边会有一个按扭,点击之,会弹出一个新的数据窗口,有个表格专门显示游标的数据。
7.快捷键设置
打开Tools->Preferences->User Interface->Key Configuration,设置快捷键如下(参考):
File/New/SQL Window Shift+S
File/New/Command Windows Shift+A
File/Close F4
Edit/ExcelPaste Shift+E
Edit/Selection/Uppercase Shift+U
Edit/Selection/Lowercase Shift+L
Edit/Selection/Comment Shift+C
Edit/Selection/Uncomment Shift+V
Tools/Window List Shift+W
8.保存布局
默认打开一个Command Window或SQL Window是非最大化的,每次打开一个新窗口都要点击最大化比较麻烦,解决此问题只需打开一个窗口并最大化后或调整为自己喜欢的窗口大小,点击“Window->Save Layout”,下次再打开新窗口默认就是你调整的窗口大小了。
9.备份Crash Recovery File
PL/SQL Developer被意外关闭(电脑被强制关机,或者任务栏里杀掉等),PL/SQL Developer会在临时目录下生成保留当前窗口的打开状态的文件,下次启动PL/SQL Developer时会显示待恢复的窗口,如果此时ignore会删除这些文件(cancel是跳过恢复,下次打开还会提示),最好是每次打开 PL/SQL Developer之前备份这些文件以避免不小心点了ignore而后悔莫及。
在PL/SQL Developer根目录下新建一个BAT脚本plsqldev.bat:
@echo off
set src=%TEMP%\PLS-Recovery
set bak="%APPDATA%\PLSQL Developer\PLS-Recovery%date:~0,10%.%time:~0,2%-%time:~3,2%-%time:~6,2%"
dir /a /b %src%|findstr .>nul&& mkdir %bak%&© /y %src%\* %bak%
start /min plsqldev.exe
注:千万不要删除%TEMP%\PLS-Recovery目录,否则PL/SQL Developer崩溃后不会自动创建该目录和生成恢复文件。
reference http://www.cnblogs.com/qq4004229/archive/2013/01/16/2862904.html
补充1:
10.登录后默认自动选中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)移得靠上一点,并加上颜色区分,这样你的平均寻表时间会大大缩短,试试看。
11.双击即显示表数据
PLSQL Developer里鼠标双击表或者视图时的默认响应实在让我感到失望,因为我最关心的是表结构和数据,但是双击后这两件事情都没有发生,也许默认响应是高手们需要的,但对我来说查看数据和表结构是最主要的,其他的我不关心。
不过好的是这是可以设置的,你可以给鼠标双击和拖放绑定需要的事件,比如:双击编辑数据,拖放显示表结构,Yeah!
位置:Tools——Preferences--User Interface,object browser,在右侧,为不同的Object type绑定双击和拖放操作。
12.SQL语句字符全部大写
自认为这是个好习惯,信息系统的核心是数据库,系统出问题时最先要查的就是SQL语句,怎样在浩瀚的日志中快速找到那条SQL语句是件比较痛苦的事情。
SQL语句全部大写并不能彻底解决这一问题,但在一堆代码中间找一行全部大写的字符相对容易些,你的眼睛会感谢你。
设置位置在Editor里。同时我觉得等宽字符可以减少程序的出错率,所以我所有的工具清一色用Courier New,如果某个IDE不支持这个字体,我基本上会选择放弃。哈,偶系个满挑惕的家伙。
设置方法:菜单Tools --> Preferences --> User Interface—— Editor --> Keyword Case --> Uppercase (当你选中语句使用格式刷的时候就会将语句全部变为大写)设置字体在other下面的font
13.选中行高亮
设置方法:菜单Tools --> Preferences-->User Interface-->Editor-->other-->Highlight edit line
14.代码自动补全设置
设置方法:菜单Tools --> Preferences-->User Interface-->Editor --> Autoreplace --> enabled=true --> edit -->输入你要替换的关键字并保存。
15.AutoReplace自动替换
快捷输入SQL语句,例如输入s,按下空格,自动替换成SELECT;再例如,输入sf,按下空格,自动替换成SELECT * FROM,非常方便,节省了大量的时间去编写重复的SQL语句。
设置方法:菜单Tools --> Preferences --> Editor --> AutoReplace. --> Edit 最后保存
下面定义了一些规则作为参考
s=SELECT
f=FROM
w=WHERE
o=ORDER BY
d=DELETE
sf=SELECT * FROM
df=DELETE FROM
sc=SELECT COUNT(*) FROM
16.数据库自动检测连接情况
因为数据库每过一段时间不操作,就会自动断开,然后需要自己手动连接,因为网络原因,总会卡在那里。工具提供了检测连接的功能,可以自动连接。
具体设置在Tools-Preferences-Check connection,Check connection前面勾选即可。
17.Select for Update
Query data相当于新打开一个窗口,并执行select * from 表。
Edit data相当于新打开一个窗口,并执行select * from 表 for update。
存储过程和函数有Test功能,选中后可以进入调试状态。
有时我们需要把一些数据导入数据库中,如果用UE拼Insert语句,会比较麻烦,而且操作性不强。PLD的SQL Window可以查询,新增,修改和删除表的内容。查询自不必说,而新增,删除和修改,只需在select语句后加入for update,对表进行行级锁定,然后点击窗口的锁型图标,即可进入编辑状态。
下面介绍一下如何从Excel中提取文本插入到数据库中我们的Excel文件中有三列:
1> 在数据库中建立临时表:create table t1 (cino varchar2(100), contno varchar2(100), loanno varchar2(100))
2> 然后在SQL Window中输入select t1 for update,并点击锁型鼠标,进入编辑状态
3> 用鼠标点击第一行的输入窗口,这时PLD会死锁几秒钟,然后可以见到光标在第一行的输入框中闪动
4> 用鼠标把CINO, CONTNO, LOANNO选中。进入Excel中,把需要插入数据库的内容选中,然后切换到PLD,按Ctrl + V:点击√,然后再点击Commit按钮,则数据提交到表t1中,执行select * from t1可以看到内容。
18.Copy to Excel
在SQL Window中执行Select语句,在结果出来以后,右键点击下面的数据区,选择Copy to Excel,可以把数据区的记录原样拷贝到Excel中。
但有两点需要注意:
一,field中不能以=开始,否则Excel会误认为是函数;
二,数字不要超过17位,否则后面的位数将会置为0,但可以通过在数字前加‘来使Excel认为该field是文本,同时对于数据库中Number类型的字段,最好用to_char输出,不然可能会显示不正常。
19.导入导出
导出步骤:
1 tools ->export user object 选择选项,导出.sql文件。
2 tools ->export tables-> Oracle Export 选择选项导出.dmp文件。
导入步骤:
注:导入之前最好把以前的表删除,当然导入另外数据库除外。
1 tools->import tables->SQL Inserts 导入.sql文件。
2 tools->import talbes->Oracle Import然后再导入dmp文件。
一些说明:
Tools->Export User Objects导出的是建表语句(包括存储结构)。
Tools->Export Tables里面包含三种导出方式,三种方式都能导出表结构以及数据,如下:
Oracle Export
Sql Insert
pl/sql developer
第一种是导出为.dmp的文件格式,.dmp文件是二进制的,可以跨平台,还能包含权限,效率也很不错,用得最广 。选择该方式需要设置正确oracle_home环境变量,否则不能导出导入。另外在64位下貌似有问题?
第二种是导出为.sql文件的,可用文本编辑器查看,通用性比较好,但效率不如第一种,适合小数据量导入导出。尤其注意的是表中不能有大字段(blob,clob,long),如果有,会提示不能导出(提示如下: table contains one or more LONG columns cannot export in sql format,user Pl/sql developer format instead)。
第三种是导出为.pde格式的,.pde为Pl/sql developer自有的文件格式,只能用Pl/sql developer自己导入导出,不能用编辑器查看。
20.查看oracle版本
select banner from sys.v_$version;
select * from v$version;
reference http://www.jb51.net/article/35224.htm