以下的技巧只针对 PL/SQL Developer 6 以上版本,版本 5 只有其中的部分特性。
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
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 输出,不然可能会显示不正常