一、概述
尝试过很多款 Oracle 开发管理工具 PL/SQL Developer、dbForge Studio for Oracle、Navicat、SQL Developer 和 Toad 等,电脑上也始终安装着前两款。为什么要同时安装两款呢,一是因为 PL/SQL Developer 用着顺手但没有直连模式,二是因为 dbForge Studio 有直连模式但布局总感觉浪费空间。测试数据库能否连通时使用 dbForge Studio,写 SQL 语句时使用 PL/SQL Developer。
这么分裂的使用方式久了实在不能忍。多方查找资料发现 PL/SQL Developer 也可以实现直连模式,从而彻底脱离安装 Oracle Client 和设置 TNS 的烦恼。
二、准备条件
1. 下载
Oracle Instant Client 是 Oracle 官方推出的免费、轻量级、绿色免安装的数据库工具,里面包含了应用连接 Oracle 数据库所需的所有类库和SDK。
官方介绍和下载地址:https://www.oracle.com/technetwork/database/database-technologies/instant-client/overview/index.html
我们只需要下载相应操作系统对应的基础版:
image.png下载后解压放到本地路径中,不需要安装。后面设置 PL/SQL Developer 的时候需要引用其中 oci.dll 的路径:
image.png2. PL/SQL Developer 安装和设置
到官方网站下载并安装相应的版本。
官方网站:https://www.allroundautomations.com/plsqldev120.html
image.png3. 脱离 TNS 直连数据库
数据库地址中输入“192.168.1.2:1521/ORCL”,此处使用 EZCONNECT 命名方法: (host[:port][/service_name])或者也可以输入完整的连接描述符(类似于tnsnames.ora文件中的方式)。
PL/SQL Developer 脱离 TNS 和 Oracle Client 直连数据库所有设置完成!
三、可能存在的问题
1. 查询中文字段或中文备注显示乱码(全是问号“?”)
出现这种情况一般是 PL/SQL Developer 所使用的编码规范和 Oracle 数据库使用的编码规范不一致导致的。
解决方式:添加环境变量指定编码规范
①、查询 PL/SQL Developer 使用的编码规范(帮助 → 支持信息)
如果为设置环境变量这里可能为空:
②、查询 Oracle 数据库使用的编码:
查询语句:
select userenv('language') from dual;
显示效果:
③、添加环境变量
开始“环境变量” → 编辑系统环境变量 → 新增用户环境变量:变量名:NLS_LANG,变量值是上个步骤查询出来的值,我这里是 AMERICAN_AMERICA.ZHS16GBK
image.png image.png④、设置完成,重新打开 PL/SQL Developer 软件。
四、参考文章:
- PLSQLDeveloper中文显示乱码的解决方法
- 解决PLSQL Developer 插入中文 乱码问题
- PL/SQL Developer 找不到oci.dll的問題(could not locate oci.dll)
- Direct Connection through Pl-SQL developer
本文为原创文章,转载请注明出处!欢迎关注任前程博客 https://renqiancheng.com,第一时间看后续精彩文章。
网友评论