今天遇到一个问题,使用plsql连接Oracle数据库,可以正常连接。但是在代码中就一直报错:
ORA-12514:TNS:监听程序当前无法识别连接描述符中请求的服务。
代码中调用的是OracleConnection方法,如下图所示:
执行到open()方法就报异常。
经过一番周折,终于解决了:
1.打开服务窗口,检查下Oracle监听服务是否启动,如果没有启动的话,启动一下。
在运行窗口,输入services.msc
点击确定,可以看到所有的服务
如果监听服务已经启动,仍然报错,那就修改下oracle的监听配置文件。
2. 找到文件所在路径,每个电脑的安装路径可能不一样
用记事本打开这个文件,然后添加以下内容:
(SID_DESC =
(GLOBAL_DBNAME = ORCL)
(ORACLE_HOME = D:\app\Administrator\product\11.2.0\dbhome_1)
(SID_NAME = ORCL)
)
添加后如下图所示:
其中ORACLE_HOME需要和上面的相同,也就是安装的路径。
修改完成后保存文件,然后重启Oracle服务。
重启方法:跟第一步操作方法一样,打开运行窗口→输入命令→在服务窗口中找到Oracle服务,在服务上右击,选择重启服务。
有关oracle的服务建议都重新启动一下。
问题解决。