2012-03-30 57 views
0

我第一次在eclipse中,并试图从我的sql服务器获取一些测试数据,现在的问题是我已经建立了一个使用ms jdbc驱动程序的sql连接,它似乎可以工作,但是当我从Eclipse运行我的查询,我得到从mssql获取数据到Eclipse

com.microsoft.sqlserver.jdbc.SQLServerException:无效的列名 'KategoriName'。 ?

error.My查询工作在SQL manager.What罚款可能是这个问题我添加下面的代码,以及:

String connectionString = "jdbc:sqlserver://192.168.0.155;user=user;password=password"; 


Connection conn= DriverManager.getConnection(connectionString); 

Statement stmt = conn.createStatement(); 

ResultSet rs; 

       String sqlconn="select [KategoriName] from [FINSAT6G9].[TBL_Test] whereID=493"; 

rs = stmt.executeQuery(sqlconn); 

String aa = rs.getString("KategoriName"); 


System.out.println(aa); 

干杯。

+2

也许一个错字,但你错过了“其中” – Th0rndike 2012-03-30 14:37:18

+0

对不起错字出现后的空间,但它是没有问题的原因很遗憾.. – Sin5k4 2012-03-30 14:38:27

+0

所以,如果你运行'选择[FINSAT6G9 [KategoriName] ]。[TBL_Test] where SS = 493' from SSMS you get results,但是当你从代码运行它时,你会得到无效的列名?你确定你连接到正确的服务器吗?如果是这样,那么登录的用户的默认目录(数据库)是什么?它可能是一个不同于你想要连接的数据库吗?如果其他数据库在'FINSAT6G9'模式中有一个'TBL_Test'表,并且没有'KategoriName'列,那么这将解释错误。 – 2012-03-30 14:40:02

回答

0

尝试,包括在连接字符串中的数据库名称,像这样:

String connectionString = "jdbc:sqlserver://192.168.0.155;user=user;password=password;databaseName=FINSAT6G9"; 

因为,很明显,错误是告诉您KategoriName列不存在这只能意味着两件事情:你有一个错字或者您试图从错误的地方获取数据,无论是错误的数据库还是错误的表格。

+0

不,添加数据库名称也没有工作,更好地联系我的系统管理员:/ – Sin5k4 2012-03-30 14:45:34