用java连sql编写的一个程序,但是不知道为什么运行不通,希望高手进来看看帮帮忙
代码如下
import java.sql.*; 
public class sqltry
{
public static void main (String[] args) 
{
String driverName = "com.microsoft.jdbc.sqlserver.SQLServerDriver"; 
String dbURL = "jdbc:microsoft:sqlserver://localhost:1433; DatabaseName=test"; 
String userName = "lysander"; 
String userPwd = "";  Connection dbConn ; try

Class.forName(driverName); 
dbConn = DriverManager.getConnection(dbURL, userName, userPwd); 
System.out.println("Connection Successful!"); 
}  catch (Exception e)
 { e.printStackTrace(); }
sqltry.executeUpdateStatement(dbConn);

}
    public sqltry() 
    {
    
    }
    public static void executeUpdateStatement(Connection con) 
     {
   try 
   {
      String SQL = "SELECT * FROM [test].[dbo].[学校代码表] ORDER BY 最低分数";
      String SQL1 = "use test";
      String SQL2 ="INSERT INTO [test].[dbo].[学校代码表]([学校代码],[学校名],[招生人数],[最低分数]) VALUES (001,ybo1,2000,469)";
      Statement stmt = con.createStatement();
      boolean a=stmt.execute(SQL1);
      int count = stmt.executeUpdate(SQL2);
  System.out.println("use test datebase "+a+"ROWS AFFECTED: " + count);
  ResultSet rs = stmt.executeQuery(SQL);
    while(rs.next)
{
   System.out.println(rs.getString("学校名") + ", " + rs.getString("学校代码"));
}
      stmt.close();
      rs.close();    
   }
   catch (Exception e)
    {e.printStackTrace();}
}     
    
}

解决方案 »

  1.   

    String SQL1 = "use test";
    boolean a=stmt.execute(SQL1);
    没什么用
    上边的dbConn = DriverManager.getConnection(dbURL, userName, userPwd); 已经确定你用那个库了
      

  2.   

    try 
       {
          String SQL = "SELECT * FROM [test].[dbo].[学校代码表] ORDER BY 最低分数";
          //String SQL1 = "use test";
          String SQL2 ="INSERT INTO [test].[dbo].[学校代码表]([学校代码],[学校名],[招生人数],[最低分数]) VALUES (001,ybo1,2000,469)";
          Statement stmt = con.createStatement();
         // boolean a=stmt.execute(SQL1);
          int count = stmt.executeUpdate(SQL2);
                            //关了Statement
                            stmt.close();
                            
      System.out.println("use test datebase "+a+"ROWS AFFECTED: " + count);
                           //再建一Statement,下边的ResultSet用这个得到
                           Statement st = con.createStatement();
      ResultSet rs = st.executeQuery(SQL);
        while(rs.next)
    {
       System.out.println(rs.getString("学校名") + ", " + rs.getString("学校代码"));
    }
                                 //关闭后来建的Statement
          st.close();
          rs.close();    
       }
       catch (Exception e)
        {e.printStackTrace();}
    }
      

  3.   

    提示错误
    F:\java\sqltry.java:47: cannot resolve symbol
    symbol  : variable next 
    location: interface java.sql.ResultSet
                  while(rs.next)
                                      ^
    我注释掉while语句以后,提示
    F:\java\sqltry.java:24: variable dbConn might not have been initialized
            sqltry.executeUpdateStatement(dbConn);
    是不是和我sql server用windows认正的关系啊,不能连啊
      

  4.   

    还是sql2005有什么特别的地方啊
      

  5.   

    while(rs.next)
    改成
    while(rs.next())