java连接oracle10g出错

时间:2008-08-30 07:01:34   来源:论坛整理  作者:  编辑:chinaitzhe
连接oracle时出了些问题
代码如下:
private final String DBDRIVER= "oracle.jdbc.driver.OracleDriver" ;
private final String DBURL= "jdbc:oracle:thin:@localhost:1521:MyOracle" ;
private final String DBUSER= "scott" ;
private final String DBPASSWORD = "tiger" ;
private Connection conn = null ;

Class.forName(DBDRIVER) ;
conn = DriverManager.getConnection(DBURL,DBUSER,DBPASSWORD) ;
其他的代码都省去了

报错如下:
java.sql.SQLException: Listener refused the connection with the following error:
ORA-12505, TNS:listener does not currently know of SID given in connect descriptor
The Connection descriptor used by the client was:
localhost:1521:MyOracle

java.lang.NullPointerException

帮忙看看 是什么原因 怎么解决?
谢谢各位了



网友回复:此回复为自动发出,仅用于显示而已,并无任何其他特殊作用
楼主【wudi251314】截止到2008-07-30 07:40:49的历史汇总数据(不包括此帖):
发帖的总数量:8 发帖的总分数:90 每贴平均分数:11
回帖的总数量:38 得分贴总数量:5 回帖的得分率:13%
结贴的总数量:8 结贴的总分数:90
无满意结贴数:1 无满意结贴分:10
未结的帖子数:0 未结的总分数:0
结贴的百分比:100.00% 结分的百分比:100.00%
无满意结贴率:12.50 % 无满意结分率:11.11 %
敬礼!
取消马甲机器人,请点这里:http://www.java2000.net/mycsdn/robotStop.jsp?usern=wudi251314
网友回复:好像是你的SID错误吧。。
也就是数据库的名字,,你用orcl试试。。。
private final String DBURL= "jdbc:oracle:thin:@localhost:1521:orcl" ;
网友回复:你去oracle下看看listener.ora里面
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = D:\oracle\product\10.2.0\db_1)
(PROGRAM = extproc)
)
(SID_DESC =
(GLOBAL_DBNAME = ORCL)
(ORACLE_HOME = D:\oracle\product\10.2.0\db_1)
(SID_NAME = ORCL)
)
)
看看SID_NAME是MyOracle吗?不是的话把MyOracle改成SID_NAME的值

你可以用sqlplus登陆到服务器
$sqlplus / as sysdba
SQL> select * from v$instance;
看一下你的机器正在跑的SID的名字是什么

网友回复:select * from v$instance;
数据库能运行 可是这句命令提示出错

select * from v$instance
*

ERROR at line 1:
ORA-00942: table or view does not exist





怎么回事?
网友回复:SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = E:\oracle\product\10.1.0\Db_1)
(PROGRAM = extproc)
)
)

LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC))
)
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
)
)
)
这个是那个文件里的内容 我按照你的说法改过来了 但是又出现新的问题了
出错信息如下:
java.sql.SQLException: 无法从套接字读取更多的数据
java.lang.NullPointerException

我明明在装oracle的时候创建了一个数据库MyOracle,所以很迷惑啊~
网友回复:Class.forName(DBDRIVER).newInstance();
网友回复:还有自己建一个数据库用户,赋予足够的权限。
另外连接数据库捕获异常。
关键字:

相关文章

    无相关信息

文章评论

共有 0 位网友发表了评论 此处只显示部分留言 点击查看完整评论页面