解决PLSQL 读不到ORACLE 的数据库(记自己第一次发帖,欢迎大家讨论,不喜勿喷)

    作为新手(其实自己也是),在家学习,安装Oracle数据库及PL/SQl客户端可能碰到Oracle数据库和PL/SQL都已经安装好了,但是PL/SQL就是读取不到数据库(没错,其实说的就是我),情况如下图:

    为此,从网上查找解决办法,终于经过漫长的战斗找到了解决办法,加上自己的总结写出本文章,希望对困惑的小伙伴有帮助。
注意要点:

1、因为PLSQL Developer是32位的,所以需要下载32位的oracle客户端(因为要使用PL/SQL必须安装Oracle客户端,不仅仅只要Oracle数据库就行了,当然大神可以使用SQL Plus);

地址:http://www.oracle.com/technetwork/topics/winsoft-085727.html。

小提示:现在在Oracle官网下载需要登录操作,作为程序猿必备技能F12(在点击之后),查看你所需下载文件下就可以看到链接,把下载地址放在迅雷中下载,分分钟的事。

2、两个安装目录:(1)Oracle数据库安装目录(Oracle数据库安装就不重复了哈,相信小伙伴都会,而且网上有很多仔细的教程,现放出地址,数据库端不管32位或64位都可以,随大家喜欢);

地址:http://www.oracle.com/technetwork/database/enterprise-edition/downloads/112010-win64soft-094461.html

(2)Oracle客户端的安装目录(直接解压就可使用 );

例:我的两个目录分别是:

Oracle数据库端:E:\app\Administrator\product\11.2.0\dbhome_1;

Oracle客户端:E:\app\Administrator\instantclient_12_2;

注:PL/SQL的安装就像普通软件安装,可以任意,但是不要放在带有(X86)或者其他特殊字符的目录下,不然会报错!

3、复制一个文件:将数据库端下client文件夹下的tnsnames.ora文件复制到客户端目录下;

扫描二维码关注公众号,回复: 8771113 查看本文章

例如:我安装好Oracle数据库端并配好相关配置测试后会有一个client目录:E:\app\Administrator\product\11.2.0\client_1,将此目录下的tnsnames.ora文件复制到Oracle客户端目录下:E:\app\Administrator\instantclient_12_2。

4、环境变量的配置:和Java环境变量配置一样,Oracle也需要环境变量,总共有两个环境变量:

(1)TNS_ADMIN = E:\app\Administrator\instantclient_12_2;(我这里是指定到客户端目录,所以要复制)

(2)NLS_LANG = SIMPLIFIED CHINESE_CHINA.ZHS16GBK;

说明:TNS_ADMIN是指tnsnames.ora所在的目录名,如果指定到客户端目录,则必须要将tnsnames.ora文件复制到客户端的目录下(我用的就是这),其实不复制的话直接指定数据库端下该文件所在目录即可,一般为E:\app\Administrator\product\11.2.0\dbhome_1\NETWORK\ADMIN,看个人喜好。

NLS_LANG指字符集变量,要与数据库端一致,可通过SQL Plus查询:

SQL> select userenv('language') nls_lang from dual;

一般显示结果如下:

NLS_LANG

-----------------------------------------------------------

SIMPLIFIED CHINESE_CHINA.ZHS16GBK

5、PL/SQL 设置:设置好以上步骤后,进入最后一步PL/SQL里面的设置,打开PL/SQL后点击取消进入里面,点击Tools->preferences后填写两个目录,如下图所示:


例如:我的配置是如下(依次上下顺序)

E:\app\Administrator\product\11.2.0\dbhome_1

E:\app\Administrator\instantclient_12_2\oci.dll

最后点击确定后,重启PL/SQL就可以看到数据库名了,如下图所示:


大功告成,文章有任何不足之处,欢迎大家指正,共勉!

发布了4 篇原创文章 · 获赞 6 · 访问量 1597

猜你喜欢

转载自blog.csdn.net/qq_37313500/article/details/79843037