共计 4168 个字符,预计需要花费 11 分钟才能阅读完成。
1. 登录 PL/SQL Developer
这里省略 Oracle 数据库和 PL/SQL Developer 的安装步骤,注意在安装 PL/SQL Developer 软件时,不要安装在 Program Files (x86)目录下,不然无法启动 PL/SQL Developer。
奇怪这里为什么选择不到数据库的 TNS 呢?我是先安装数据库,再安装 PL/SQL Developer。按理说安装 PL/SQL Developer 时,就已经识别到了 Oracle Home 和 OCI Libaray 了。管它呢?先以非登录方式登录 PL/SQL Developer,设置 Oracle Home 和 OCI Libaray。
在 Oracle Home 这选项下,没有自动识别到 Oracle Home 目录,于是手动指定 Oracle Home 路径。
点击“确定”,退出 PL/SQL Developer,再次登录。
还是选择不到数据库 TNS,尝试无数据库登录,看看报什么错误。
终于找到问题的关键点了,安装的 PL/SQL Deleloper 只能识别 32 的 oci.dll。看来是要安个 64 位的 PL/SQL Deleloper,于是在网上搜索 PL/SQL Deleloper 64 位版本。然而发现 PL/SQL Deleloper 不区分 64 位和 32 位。那看来只能从 oci.dll 入手了。根据上面的报错信息来看,似乎只要安装一个 32 位版本的 Oracle Client。
2. 安装 oracle Clinet
首先到 Oracle 官网上去下载一个 Oracle 11g Client,不过需要先申请一个 Oracle 帐号,才能下载。
目前下载地址:http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html
这个一个绿色版的 Oracle Client,因此只要需要解压了,就可以是。将下载的 Oracle Client 文件 instantclient-basic-win32-11.2.0.1.0.zip 解压到 C 盘(注意啦!不能下 64 位的)。然后在解压后的 C:\instantclient_11_2 目录下新建 NETWORK\ADMIN 目录,在 ADMIN 目录下新建 tnsnames.ora 文件,添加数据库 TNS。
ORCL =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = chiclewu-PC)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
)
)
(注意:tnsnames.ora 文件也可以从 Oracle 数据库 HOME 目录的 NETWORK\ADMIN 目录,还要把 sqlnet.ora 拷贝过来。然后确定 HOST 配置是否正确,如果 HOST 是主机名,需要把主机名后面的域名去掉)
3. 配置 PL/SQL Developer 的 Oracle Home 和 OCI Libaray
以非登录模式进入 PL/SQL Developer,将 Oracle Home 路径指定为 Oracle Client 目录(C:\instantclient_11_2),OCI Libaray 路径为 Oracle Client 目录的 oci.dll(C:\instantclient_11_2\oci.dll)。
点击“确定”,现在配置已完成,下面就是等待奇迹的时刻。退出 PL/SQL Developer。
4. 验证 Oracle Client
打开新的 PL/SQL Developer,输入用户名和密码,在 database 选项下,可以看刚才配置的 TNS 了。
等待奇迹时刻 ………..
经过几秒钟的等待,奇迹时刻终于到来了,可以登录了,可以登录了 ……..
检验一下是否可以查询数据。
查询数据没有问题,终于大功告成了。
快捷键设置:
1、类 SQL PLUS 窗口:File->New->Command Window,这个类似于 oracle 的客户端工具 sql plus,但比它好用多了。
2、设置关键字自动大写:Tools->Preferences->Editor,将 Keyword case 选择 Uppercase。这样在窗口中输入 sql 语句时,关键字会自动大写,而其它都是小写。这样阅读代码比较容易,且保持良好得编码风格,同理,在 Tools->Preferences->Code Assistant(助手)里可以设置代码提示延迟时间、输入几个字符时提示、数据库对象的大写、小写,首字母大写等;
3、查看执行计划: 选中需要分析的 SQL 语句,然后点击工具栏的 Explain plan 按钮(即执行计划),或者直接按 F5;这个主要用于分析 SQL 语句执行效率,分析表的结构,便于为 sql 调优提供直观依据;
4、自动替换: 快捷输入 SQL 语句,例如输入 s,按下空格,自动替换成 SELECT;再例如,输入 sf,按下空格,自动替换成 SELECT * FROM,非常方便,节省了大量的时间去编写重复的 SQL 语句。
设置方法:菜单 Tools–>Preferences–>Editor–>AutoReplace(自动替换)–>Edit
1)、建立一个文本文件 shortcuts.txt,并写入如下内容:
s=SELECT
复制代码另存到 PL/SQL Developer 的安装路径下的~/PlugIns 目录下
2)、Tools–>Preferences–>User Interface–>Editor–>AutoReplace,选中 Enable 复选框,然后浏览文件选中之前创建的 shortcuts.txt,点击 Apply。
3)、重启 PL/SQL Developer,在 sql 窗口中输入 s + 空格,sc+ 空格做测试。
注意:shortcuts.txt 不可删除掉,否则快捷键无法用
下面定义了一些规则作为参考
i=INSERT
u=UPDATE
s=SELECT
f=FROM
w=WHERE
o=ORDER BY
d=DELETE
df=DELETE FROM
sf=SELECT * FROM
sc=SELECT COUNT(*) FROM
sfu=SELECT * FROM FOR UPDATE
cor=CREATE OR REPLACE
p=PROCEDURE
fn=FUNCTION
t=TIGGER
v=VIEW
sso=SET serveroutput ON;
设置快捷键 (设置方法:菜单 Tools–>Preferences–> 用户界面–> 键配置)
新建 sql 窗口:ctrl+shift+s
新建命令窗口:ctrl+shift+c
新建测试窗口:ctrl+shift+t
PL/SQL Developer 美化器:ctrl+shift+f
重做:ctrl+shift+z
撤销:ctrl+z
清除:ctrl+d(慎用,不可恢复,俺是禁用哦 O(∩_∩)O~)
选中所有:ctrl+a
缩进:tab
取消缩进:shift+tab
大写:ctrl+shift+x
小写:ctrl+shift+y
注释:ctrl+h
取消注释:ctrl+m
查找:ctrl+f
显示表结构:ctrl+ 鼠标悬停在表名上
模板列表:shift+alt+r
窗口列表:ctrl+w
5、执行单条 SQL 语句: 按 F8 键
6、TNS Names:菜单 Help->Support Info(支持信息)->TNS Names,可以查看 Oracle 的 tnsnames.ora;
7、调试存储过程
在使用 PL/SQL Developer 操作 Oracle 时,有时候调用某些存储过程,或者调试存储过程;
调用存储过程的方法:
1)、首先,在 PL/SQL Developer 左边的 Browser 中选择 Procedures,查找需要调用的存储过程;
2)、然后,选中调试的存储过程,点击右键,选择 Test,在弹出来的 Test scrīpt 窗口中,对于定义为 in 类型的参数,需要给该参数的 Value 输入值;最后点击上面的条数按钮:Start debugger 或者按 F9;
3)、最后点击:RUN 或者 Ctrl+R。
调试快捷键
切换断点:ctrl+b
开始:f9
运行:ctrl+r
单步进入:ctrl+n
单步跳过:ctrl+o
单步退出:ctrl+t
运行到异常:ctrl+y
8、模板快捷键
9、登录后默认自动选中 My Objects
默认情况下,PLSQL Developer 登录后,Brower 里会选择 All objects,如果你登录的用户是 dba,要展开 tables 目录,正常情况都需要 Wait 几秒钟,而选择 My Objects 后响应速率则是以毫秒计算的。
设置方法:
Tools 菜单–>Brower Filters,会打开 Brower Folders 的定单窗口,把“My Objects”设为默认即可。
Tools 菜单–>Brower Folders 中把你经常点的几个目录(比如:Tables Views Seq Functions Procedures)移得靠上一点,并加上颜色区分,这样你的平均寻表时间会大大缩短,试试看。
优先级,从左往右
Tables–>Tablespaces–>Procedures–>Users–>Roles
Oracle 数据库之 PL/SQL 程序基础设计 http://www.linuxidc.com/Linux/2015-06/119013.htm
PL/SQL Developer 实用技巧分享 http://www.linuxidc.com/Linux/2014-09/107391.htm
使用 PL/Scope 分析 PL/SQL 代码 http://www.linuxidc.com/Linux/2015-07/120607.htm
在 PL/SQL 中使用日期类型 http://www.linuxidc.com/Linux/2015-07/120608.htm
从一个案例看 PL/SQL 代码片的编译与运行 http://www.linuxidc.com/Linux/2016-03/128904.htm
更多 Oracle 相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12
本文永久更新链接地址:http://www.linuxidc.com/Linux/2016-07/133617.htm