PL/SQL Developer 脱离 TNS 和 Oracle

作者: 任前程 | 来源:发表于2018-11-29 12:16 被阅读0次

    一、概述

    尝试过很多款 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.png

    2. PL/SQL Developer 安装和设置

    到官方网站下载并安装相应的版本。

    官方网站:https://www.allroundautomations.com/plsqldev120.html

    image.png

    3. 脱离 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 软件。

    四、参考文章:

    1. PLSQLDeveloper中文显示乱码的解决方法
    2. 解决PLSQL Developer 插入中文 乱码问题
    3. PL/SQL Developer 找不到oci.dll的問題(could not locate oci.dll)
    4. Direct Connection through Pl-SQL developer

    本文为原创文章,转载请注明出处!欢迎关注任前程博客 https://renqiancheng.com,第一时间看后续精彩文章。

    相关文章

      网友评论

        本文标题:PL/SQL Developer 脱离 TNS 和 Oracle

        本文链接:https://www.haomeiwen.com/subject/iwgxcqtx.html