2012-03-30 71 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