0

我从 2 天开始一​​直在寻找解决方案并尝试了所有方法,但我仍然无法解决我面临的问题。问题:无效的对象名称“信息”

package test;
import java.sql.*;
public class DataConn {
public static void main(String arg[]){
    try{
        //Load JDBC driver
        Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");

        //Establish connection
        String url = "jdbc:sqlserver://localhost\\SQL2014:1433;databaseName=Test;integratedSecurity=true";
        Connection con = DriverManager.getConnection(url);
        System.out.println("Connection success");

        //fetch data from Info
        Statement st = con.createStatement();
        String sql = "SELECT * FROM Info";
        ResultSet rs = st.executeQuery(sql);

        //extract
        while(rs.next()){
            String Name = rs.getString("Name");
            String Class = rs.getString("Class");
            int age = rs.getInt("Age");

            System.out.println("Name: "+Name +"\t"+"Class: "+Class+"\t"+"Age: "+age);
        }
        rs.close();
        con.close();
    }
    catch(Exception e){
        System.err.println("Got an Exception!");
        System.out.println(e.getMessage());
    }
}
}

输出:

Connection success
Invalid object name 'Info'.
Got an Exception!

我正在使用 Eclipse 和 Sql server 2014,我尝试了大多数类似的东西:1. [databasename].[dbo].[Info] 2. Test.dbo.Info

但我最终得到了同样的错误:无效的对象名称

这是 SqlServer 2014 的屏幕截图:

4

2 回答 2

0

这里的对象信息是您要查询的表。确保检查以下 1. 确保表存在于模式“TEST”上,并确保模式当然存在。该表可能位于默认架构上。2. 确保用户对该表具有权限 3. 确保结果集列与表方案匹配

由于数据库连接成功,我只怀疑架构上不存在该表。您可以尝试默认架构。

于 2016-05-25T20:10:44.077 回答
0

由于连接成功,这表明您没有任何名为“Info”的模式。检查 sql 数据库中的表名。

于 2016-05-25T20:30:38.837 回答