为什么通过ODBC数据源连接数据库会出现问题??

搬板砖 2004-06-12 10:52:05
用sql server数据库时用JDBC-ODBC连接数据库时设置数据源然后连接数据库出现如下错误:(程序绝对没得问题)
javax.servlet.ServletException: [Microsoft][ODBC ???????] ???????????????????
org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:867)
org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:800)
org.apache.jsp.testsqlserver2_jsp._jspService(testsqlserver2_jsp.java:108)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:133)
javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:311)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:301)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:248)
javax.servlet.http.HttpServlet.service(HttpServlet.java:853)


root cause

java.sql.SQLException: [Microsoft][ODBC ???????] ???????????????????
sun.jdbc.odbc.JdbcOdbc.createSQLException(JdbcOdbc.java:6958)
sun.jdbc.odbc.JdbcOdbc.standardError(JdbcOdbc.java:7115)
sun.jdbc.odbc.JdbcOdbc.SQLDriverConnect(JdbcOdbc.java:3074)
sun.jdbc.odbc.JdbcOdbcConnection.initialize(JdbcOdbcConnection.java:323)
sun.jdbc.odbc.JdbcOdbcDriver.connect(JdbcOdbcDriver.java:174)
java.sql.DriverManager.getConnection(DriverManager.java:512)
java.sql.DriverManager.getConnection(DriverManager.java:171)
org.apache.jsp.testsqlserver2_jsp._jspService(testsqlserver2_jsp.java:59)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:133)
javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:311)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:301)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:248)
javax.servlet.http.HttpServlet.service(HttpServlet.java:853)

用access时设数据源时也会出现这样的问题
以前用这种方法连数据库时没问题,好像是突然出现这种情况,怎么回事??

附连接数据库的方法:
java.sql.Connection sqlConn;
java.sql.Statement stmt;
java.sql.ResultSet rs;
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
sqlConn=java.sql.DriverManager.getConnection("jdbc:odbc:book","","");
stmt=sqlConn.createStatement();

...全文
157 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
搬板砖 2004-06-16
  • 打赏
  • 举报
回复
up
搬板砖 2004-06-13
  • 打赏
  • 举报
回复
在tomcat里提示如下错误:
java.sql.SQLException: [Microsoft][ODBC SQL Server Driver]无效的描述符索引
java.sql.SQLException: [Microsoft][ODBC SQL Server Driver]无效的描述符索引
at sun.jdbc.odbc.JdbcOdbc.createSQLException(JdbcOdbc.java:6958)
at sun.jdbc.odbc.JdbcOdbc.standardError(JdbcOdbc.java:7115)
at sun.jdbc.odbc.JdbcOdbc.SQLGetDataString(JdbcOdbc.java:3908)
at sun.jdbc.odbc.JdbcOdbcResultSet.getDataString(JdbcOdbcResultSet.jav
5702)
at sun.jdbc.odbc.JdbcOdbcResultSet.getString(JdbcOdbcResultSet.java:35

at sun.jdbc.odbc.JdbcOdbcResultSet.getString(JdbcOdbcResultSet.java:41

at org.apache.jsp.bookshop.index_jsp._jspService(index_jsp.java:132)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:133)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapp
.java:311)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java
01)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:248)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Ap
icationFilterChain.java:284)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(Applicatio
ilterChain.java:204)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrappe
alve.java:257)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardVa
eContext.java:151)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.j
a:567)
at org.apache.catalina.core.StandardContextValve.invokeInternal(Standa
ContextValve.java:245)
.........................
.........................
.........................
.........................
.........................
搬板砖 2004-06-13
  • 打赏
  • 举报
回复
环境变量当然设好了,如果我用SQL SERVER 的JDBC驱动连接数据库:
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();
DriverManager.getConnection("jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=book","sa","sa");
一点问题都没有,可用这种JDBC-ODBC桥连接数据库设数据源就出现如上错误
有经验的同志们快帮帮我啊,谢谢了
seawolfzxw 2004-06-13
  • 打赏
  • 举报
回复
a servlet problem?!
Aaron303 2004-06-13
  • 打赏
  • 举报
回复
看一下你的环境变量配好了没有?

81,091

社区成员

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

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