关于jsp连接数据库的问题!为什么会报错呢???
最近用jsp替同学做了一个程序(jdk1.4.0 ,resin2.1.2 , MS Sql server 2000),由于有数据库方面的操作,
所以装了MS sql server 的jdbc驱动程序,程序测试没有任何问题。
把程序给了同学,他那里用的是jdk1.4.1 ,resin2.1.4 ,同时也装了 MS Sql server 2000 和jdbc驱动程序
可是在他那里刚运行首页main.jsp时IE就报了错,如下:
----------------
500 Servlet Exception
java.lang.NullPointerException
at _mywork._main__jsp._jspService(/mywork/main.jsp:55)
at com.caucho.jsp.JavaPage.service(JavaPage.java:75)
at com.caucho.jsp.Page.subservice(Page.java:485)
at com.caucho.server.http.FilterChainPage.doFilter(FilterChainPage.java:182)
at com.caucho.server.http.Invocation.service(Invocation.java:312)
at com.caucho.server.http.CacheInvoc
main.jsp 的第55行代码如下:
if(rs.next()){file_num=rs.getInt("filenum");}
------------------------------------
resin报错如下:
1database.executeQuery: [Microsoft][SQLServer 2000 Driver for JDBC][SQLServer]用户'sa'登陆失败。
原因:未与信任SQL Server连接相关联
--------------------
我用了一个javabean封装了jsp与数据库的连接,与报错部分相关代码如下:
public ResultSet executeQuery(String sql)
{
rs = null;
try
{
conn =
DriverManager.getConnection("jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=hainingclub",
"han","han");
stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
rs = stmt.executeQuery(sql);
}
catch(SQLException ex)
{
System.err.println("1database.executeQuery: " + ex.getMessage());
//这里报错了
}
return rs;
}
他那里的hainingclub数据库是通过导入我这里的 .sql脚本生成的,
同时自己建立了登录用户 han。
我想问的就是:为什么程序在我这里没错但在他那里确报错了,请各位大虾指教!
---------------------------------
注:
他的jdbc驱动程序是从前几天微软网站上下载的(大小:2M左右),
而我jdbc驱动程序是从同学那里拷来得(大小:6M左右),
为什么都是驱程但是大小却查这么多?
程序出错和我们用的jdbc驱动程序不同有关吗?
(由于我得这位同学远在英国,所以没有把6M多的这个驱程给他,
而是让他在微软直接下载了驱程)