Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
DBCC CHECKDB未返回Java(MS SQL)中的结果集_Java_Sql Server_Resultset_Executequery_Dbcc - Fatal编程技术网

DBCC CHECKDB未返回Java(MS SQL)中的结果集

DBCC CHECKDB未返回Java(MS SQL)中的结果集,java,sql-server,resultset,executequery,dbcc,Java,Sql Server,Resultset,Executequery,Dbcc,以下是我的功能: private static void checkDatabase(String dbName, String password) { try{ Connection con=DriverManager.getConnection( "jdbc:sqlserver://localhost;database="+dbName+ ";user=SA;password=" +passwor

以下是我的功能:

private static void checkDatabase(String dbName, String password) {
    try{
        Connection con=DriverManager.getConnection(
                "jdbc:sqlserver://localhost;database="+dbName+ ";user=SA;password=" +password);
        Statement stmt=con.createStatement();
        ResultSet rs=stmt.executeQuery("DBCC CHECKDB;");
        while(rs.next()){
          System.out.println( //TODO );
        }
            con.close();
    }catch(Exception e){ System.out.println(e);}
}
  • 我想使用DBCC CHECKDB检查所有数据库,但出现以下错误:

     com.microsoft.sqlserver.jdbc.SQLServerException: The statement did not return a result set. 
    
    为什么DBCC CHECK DB不能与executeQuery()一起使用?我如何修复它

  • 所以,如果我已经从stmt.executeQuery()中获得了ResultSet,那么如何将该结果读取为行或字符串?我想知道有多少错误。多谢各位


  • DBCC CHECKDB
    默认情况下将结果作为消息而不是结果集返回。指定
    TABLERESULTS
    选项(
    DBCC CHECKDB WITH TABLERESULTS;
    ),以便将结果作为行而不是消息返回

    或者,您可以使用
    execute
    方法代替
    executeQuery
    ,并使用
    getWarnings
    获取返回的消息:

    stmt.execute("DBCC CHECKDB;");
    SQLWarning w = stmt.getWarnings();
    while(w != null) {
        System.out.println(w.getMessage());
        w = w.getNextWarning();
    }
                   
    

    默认情况下,DBCC CHECKDB将结果作为消息而不是结果集返回。指定
    TABLERESULTS
    选项(
    DBCC CHECKDB WITH TABLERESULTS;
    )或使用不返回结果集的方法执行查询。谢谢。这对我有很大帮助