高分求解:程序访问sql server 数据库不成功,找不到原因
cds1 2006-04-15 12:32:19 我在javabean里放了个main了,
编译通过,可是执行的时候又是空指针异常呀,不懂中
程序如下:
//package vote1;
import java.sql.*;
public class voteconn
{
public static final String sDBDriver="com.microsoft.jdbc.sqlserver.SQLServerDriver";
public static final String sConnStr="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=school";
public static final String user="sa";
public static final String password="123456";
Connection connect=null;
ResultSet rs=null;
public voteconn()
{
try
{
Class.forName(sDBDriver);
}
catch (java.lang.ClassNotFoundException e)
{
System.err.println(e.getMessage());
}
}
public ResultSet executeQuery(String sql)
{
try
{
connect=DriverManager.getConnection(sConnStr,user,password);
Statement stmt=connect.createStatement();
rs=stmt.executeQuery(sql);
System.out.println("连接数据库成功");
return rs;
}
catch (SQLException ex)
{
System.err.println(ex.getMessage());
System.out.println("发生异常啦");
return null;
}
}
public int executeUpdate(String sql)
{
int result=0;
try
{
connect=DriverManager.getConnection(sConnStr);
Statement stmt=connect.createStatement();
result=stmt.executeUpdate(sql);
return result;
}
catch (SQLException ex)
{
System.err.println(ex.getMessage());
return result;
}
}
public static void main(String[] args)
{
voteconn ConnDbBean=null;
ResultSet rs=ConnDbBean.executeQuery("select * from vote1");
try
{
while(rs.next())
{System.out.println("ID:"+rs.getString("id")+"name:"+rs.getString("note"));}
rs.close();
}
catch (Throwable t)
{
t.printStackTrace(System.out);
}
}
}
执行java voteconn后提示如下:
----------java ----------
Exception in thread "main" java.lang.NullPointerException
at voteconn.main(voteconn.java:59)
输出完成 (耗时 0 秒) - 正常终止
麻烦大家帮我分析下吧,
而我用一另外一段代码却可以正然访问数据库,
并有返回值,代码Test1.java如下:
// Java Document
import java.sql.*;
public class Test1
{
public static final String sDBDriver="com.microsoft.jdbc.sqlserver.SQLServerDriver";
public static final String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=school";
public static final String user="sa";
public static final String password="123456";
public static void main(String[] args)
{
String queryString="SELECT * FROM vote1";//SQL语句
Connection conn=null;
Statement st=null;
ResultSet rs=null;
try
{
Class.forName(sDBDriver);
conn=DriverManager.getConnection(url,user,password);
st=conn.createStatement();
rs=st.executeQuery(queryString);
while(rs.next())
{
System.out.println("ID:"+rs.getString("id")+"company:"+rs.getString("note")+" vote:"+rs.getString("c_num"));
}
rs.close();
st.close();
conn.close();
}
catch (Throwable t)
{
t.printStackTrace(System.out);
}
}
}
sql server 数据库打上了sp3补丁了,还下载安装了jdbc驱动,并设置了环境变量