前置条件:楼主是在虚拟机里面进行安装oracle和pl/sql的,所以我的安装后,发现我的pl/sql显示的database是空的,当然楼主会检查我的tnsnames.ora是不是配置正确了,但是检查后发现是正常的,依然显示database是空的,报错页面如图1.

图1

然后下面说下解决办法。

1.由于之前虚拟机磁盘空间不足,楼主就去新增了一个E盘,所以我的oracle是装在E盘的,但是我的instantclient_11_2是装在虚拟机的C盘的,此处应该同步。

保证和之前安装的oracle在同级目录下,如图2.

图2

2.此处放置后,需要对pl/sql进行设置,如图3

图3

图3页面,选择Cancel,进入主界面。在主界面的主菜单中,选择【Tools】-》【Preferences】,弹出设置对话框,如图4.

图4

图4中第一个红框,填写instantclient_11_2的路径,第二个红框填写instantclient_11_2文件夹中oci.dll的路径,然后“ok”即可。

3.环境变量的配置

找到环境变量TNS_ADMIN,修改存放tnsnames.ora的路径即可,图3和图4路径一致即可。

图3

图4

备注:如果安装了一个oracle其他版本的的客户端,然后又删掉了,可能没清理干净,环境变量自动增加了一个TNS_ADMIN(路径为新安装客户端的路径),也有可能导致plsql登录时找不到原来的配置。此时进行如上修改也课解决问题。

4.如果还是不可以,那么可以去tnsnames.ora文件里面进行修改,看下是不是SERVICE_NAME进行了修改。改成你安装的那个oracle服务器的名字就可以了。如图5.

图5

到此处再次打开pl/sql,就显示database不是空的了。如图6.

图6

图6可以发现,我显示database就是我在tnsnames.ora文件里面设置的3个,所以如果需要新增连接的数据库,直接在tnsnames.ora文件进行新增就可以了。

最后说一下楼主遇到的一个别的问题吧,不是连接的,但是也是pl/sql的,如图7.

图7

Dynamic Performance Tables not accessible, 
Automatic Statistics Disabled for this session

You can disable statistics in the preference menu,or obtanin select 
priviliges on the v$session,v$sesstat and v$statname tables 
我每次登录数据库查询表时,第一次总报这个错误。这个小问题把楼主搞蒙了,看了半天,同事说让我去解锁,也是醉了。

而实际是开了PLSQL Developer 的统计功能了, 在 Tools->Preferences->Options里 把Automatic Statistics前的那个勾子去掉,保存就可以了。如图8.

图8

至此问题终于完美解决了,耗费了楼主一下午的时间,特此总结下吧,方便以后查询。

关于pl/sql打开后database为空的问题解决办法的更多相关文章

  1. 解决PL/SQL管理工具database下拉为空和登录出现ORA-12154

    前言:昨天捣鼓了一下午,终于可以用plsql连接上oracle了... 测试环境:win10 注意问题: (一).环境变量 我发现按网上别人说的那一大推环境配置,很容易出错,我把它们全删了,就留了两个 ...

  2. PL/SQL错误提示 database character set(AL32UTF8) and Client character set(ZHS16GBK) are different

    PL/SQL database character set(AL32UTF8) and Client character set(ZHS16GBK) are different 这是由于安装oracl ...

  3. win7 64位系统 pl/sql 无法解析指定的连接标识符解决办法

    我用的是win764位,装好后,装了pl/sql 和toad,都连不上数据库,报错位“无法解析指定的连接标识符” 解决办法,经过研究发现安装目录有问题.默认会安装在“C:\Program Files ...

  4. PL/SQL不支持64位Oracle Client 解决办法

    解决X64操作系统PL/SQL连接报错问题 make sure you have the 32 bits oracle client installed 说明PLSQL Developer并不支持Or ...

  5. mysql中CONCAT值为空的问题解决办法

    在mysql中concat函数有一个特点就是有一个值为null那么不管第二个字符有多少内容都返回为空了,这个特性让我们在实例应用中可能觉得不方便,但实现就是这样我们需要使用其它办法来解决. 天在做op ...

  6. PL/SQL中判断字段为空

    功能写完发现数据库里好多关键字段是空的,可以直接删掉,可直接: DELETE FROM 表名 WHERE 字段 IS NULL OR TRIM(字段) = ''

  7. htaccess不起作用的解决方法,AllowOverride All打开后出现403错误时解决办法

    在php程序的目录下有一个htaccess文件,这个文件起着对url重写的作用,但是不巧的,在我的应用程序里不起作用,baidu了一下,发现是 AllowOverride All,  这个选项没有打开 ...

  8. Adobe Reader XI 打开后“已停止工作”的解决办法

    搜了好多方法按照步骤做完,基本无用,试了以下方法搞定. 具体方法是: 把域名解析到本机. 打开 C:\Windows\System32\drivers\etc\hosts 添加 127.0.0.1 a ...

  9. java.sql.SQLException: ORA-01578: ORACLE 数据块损坏问题解决办法

    错误信息: java.sql.SQLException: ORA-01578: ORACLE 数据块损坏 (文件号 17, 块号 315703) ORA-01110: 数据文件 17: 'D:\ORA ...

随机推荐

  1. CentOS 系统 MySQL 5.7 开启远程连接

    CentOS 系统安装好 MySQL 后,默认情况下不支持用户通过非本机连接上数据库服务器,下面是解决方法: 1.在控制台执行 mysql -u root -p 系统提示输入数据库 root 用户的密 ...

  2. 同步/异步/阻塞/非阻塞/BIO/NIO/AIO

    转摘自:https://www.cnblogs.com/lixinjie/p/a-post-about-io-clearly.html 常规的误区 假设有一个展示用户详情的需求,分两步,先调用一个HT ...

  3. jQuery入门简述

    jQuery 是一套快速的,简洁的 javaScript 脚本库,jQuery 由美国人 John Resig 创建,至今已吸引了来自世界各地的众多 javaScript 高手加入其组织,使用户能更方 ...

  4. MVC,MVP 和 MVVM 的图示(原理)

    一.MVC MVC模式的意思是,软件可以分成三个部分. 视图(View):用户界面. 控制器(Controller):业务逻辑 模型(Model):数据保存 各部分之间的通信方式如下. View 传送 ...

  5. window.open打开一个新空白页面,不会自动刷新【解决方案】

    调用js方法: function BuildPostForm(fm, url, target) { var e = null, el = []; if (!fm || !url) return e; ...

  6. ASE19团队项目 beta阶段 model组 scrum5 记录

    本次会议于12月6日,19时30分在微软北京西二号楼sky garden召开,持续20分钟. 与会人员:Jiyan He, Lei Chai, Linfeng Qi, Xueqing Wu, Kun ...

  7. ECharts雷达图详细配置说明

    雷达图表配置说明: // 指定图表的配置项和数据 var option = { backgroundColor: 'rgba(204,204,204,0.7 )', // 背景色,默认无背景 rgba ...

  8. ant design pro超详细入门教程

    1.Ant Design Pro 初了解 说到ant design pro,得先了解一下ant design是个什么东西?ant design蚂蚁金服基于react打造的一个服务于企业级产品的UI框架 ...

  9. 跨平台打开一个URL的方法

    unit u_urlOpen; interface uses System.SysUtils, System.Types, System.UITypes, System.Classes, System ...

  10. go语言的局部变量在堆上还是栈上?

    在讨论之前,先看如下代码: type treeNode struct { value int left, right *treeNode } func createNode(value int) *t ...