困扰了我好几天,用jdbc连接数据库的问题,不知道卡在哪里了,请大伙帮我看看。谢谢,帮我顶一顶,也给分。

zg 2002-11-01 03:46:03
我不是偷懒,我已经查了csdn上很多帖子,能打开的我都看了,还是不行。
我的代码,我是连接informix数据库,本代码唯一的功能就是测试连接。

import java.sql.*;
import java.util.*;

public class conn {

public static void main(String[] args)
{

String url ="jdbc:informix-sqli://10.110.180.1:8002/testdb:informixserver=nmserver3;user=test;password=test";
String testName = "Simple Connection";

Connection conn = null;

System.out.println(">>>" + testName + " test.");
System.out.println("URL = \"" + url + "\"");

try
{
Class.forName("com.informix.jdbc.IfxDriver");
}
catch (Exception e)
{
System.out.println("ERROR: failed to load Informix JDBC driver.");
}

try
{
conn = DriverManager.getConnection(url);
}
catch (SQLException e)
{
System.out.println("ERROR: failed to connect!");
}

try
{
conn.close();
}
catch (SQLException e)
{
System.out.println("ERROR: failed to close the connection!");
}

System.out.println(">>>End of " + testName + " test.");
}
}


每次运行是连接失败。我的url配置都是参照odbc的连接配置的,比如端口号(8002),server名称(nmserver3),用的都和配置odbc的时候一样。url的格式是照驱动的帮助写的。我不知道informix数控库还要装什么东西才能被jdbc连接上吗?我的代码有毛病吗?请大家帮我看看,我已经被折磨了两天了,帮帮忙,帮我顶一下,我也很感激。谢谢。
...全文
73 27 打赏 收藏 转发到动态 举报
写回复
用AI写文章
27 条回复
切换为时间正序
请发表友善的回复…
发表回复
zg 2002-11-04
  • 打赏
  • 举报
回复
终于搞定了,花了我好几天时间。最后竟然是因为我的jdk版本太新了,在glassprogrammer() 的提示下,我打出错误信息,发现驱动程序提示需要在1.2版下运行,而我用了1.3和1.4,换了1.2以后就好了。真是郁闷啊,这个破东西真是不太完善啊。。。
谢谢大家的关注。
glassprogrammer 2002-11-02
  • 打赏
  • 举报
回复
在你的 catch 中间把 StackTrace 打出来看看再说:
try
{
conn = DriverManager.getConnection(url);
}
catch (SQLException e)
{
System.out.println("ERROR: failed to connect!");
e.printStackTrace();
}

这是最基本的调试方法了
yashiro 2002-11-02
  • 打赏
  • 举报
回复
用odbc 连接的数据库跟jdbc连没关系,用odbc连需要定义数据源,用jdbc需要驱动程序。
需要有个jdbc连informix数据库的驱动程序才能用jdbc连。
没连过informix,所以不知道你的url对不对,我连过sqlserver和db2的。
zg 2002-11-02
  • 打赏
  • 举报
回复
哪位朋友帮我看看啊,这个问题很难吗?我整理一下我的问题:
1。可以用odbc连接的数据库是不是肯定可以用jdbc连接上?
2。informix数据库服务器需要做社么配置才支持jdbc吗?
3。再就是帮我看看我的url有什么不对地方吗?为什么连不上?
谢谢。分不够我还可以再加一个帖子,请有经验的朋友帮个忙。
unlun 2002-11-01
  • 打赏
  • 举报
回复
informix没有用过,帮你up~!
希望早点解决~!
CEOGEO 2002-11-01
  • 打赏
  • 举报
回复
用驱动程序连数据库 用不到ODBC的,用就错了。应该直接用数据库的名字。
zg 2002-11-01
  • 打赏
  • 举报
回复
我要回家了,希望朋友们能帮我看看或者帮我up。谢了。
zg 2002-11-01
  • 打赏
  • 举报
回复
informixserver=nmserver3,nmserver3是数据库server的名称啊,配置odbc就是这个名称
zg 2002-11-01
  • 打赏
  • 举报
回复
肯定正确,我本来连接的生产数据库,为了保密,改成的test,我已经检查了好多次了。
kofwr 2002-11-01
  • 打赏
  • 举报
回复
数据库名字,密码,用户都正确了??
zg 2002-11-01
  • 打赏
  • 举报
回复
odbc肯定能连上,那是个生产数据库,要是连不上,客户早就来骂我们了。我已经重起过好几次了,呜呜。。。为什么学点东西这么难。
playman29 2002-11-01
  • 打赏
  • 举报
回复
testdb:informixserver=nmserver3,这个是什么啊?
playman29 2002-11-01
  • 打赏
  • 举报
回复
建议你,把classpath重写一下,然后重启。试试用ODBC能不能连,是不是数据库的问题?
zg 2002-11-01
  • 打赏
  • 举报
回复
是不是odbc能连接上,jdbc就一定能连接上呢?它们用的配置信息(端口,数据库名称,server名称)是一样的吗?
CEOGEO 2002-11-01
  • 打赏
  • 举报
回复
SQL SERVER 的我连过,informix 没有,不知道驱动程序怎么加 和url
帮你up一下吧。
zg 2002-11-01
  • 打赏
  • 举报
回复
我的url我已经检查了无数次了,改写过好几次了,效果都是一样的。url ="jdbc:informix-sqli://10.110.180.1:8002/testdb:informixserver=nmserver3;user=test;password=test";
我也是怀疑这里可能有写的不对的,谁能帮我挑出来啊。
zg 2002-11-01
  • 打赏
  • 举报
回复
那应该怎么写,请指教?我的驱动已经找到了,而且我的代码是从informix驱动程序的例子里修改的。
dongjh 2002-11-01
  • 打赏
  • 举报
回复
检查一下你的URL
lyc98370118 2002-11-01
  • 打赏
  • 举报
回复
私人意见:你的驱动注册的不对

即:Class.forName"com.informix.jdbc.IfxDriver");中的

"com.informix.jdbc.IfxDriver"写错了
zg 2002-11-01
  • 打赏
  • 举报
回复
wjmmml(笑着悲伤) 贴的代码我已经看过了,我实在对比不出我的代码有什么不对。
谢谢大家的帮忙。
加载更多回复(7)

62,629

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧