2014-03-25 29 views
0

我正在編寫一個程序,將股票數據提供給GUI,它將實時更新。 LastPreviousCloseHighLowVolumeChange% Change52 Wk High52 Wk LowMarket CapEPSP/E Ratio# Shares Out:當我在Excel中使用智能標記,它與13列更新。但是,我只想處理一些列。有沒有什麼辦法只選擇一些列來提取數據?這是我使用提取數據是什麼和它的作品,但我不希望這一切:有沒有辦法從Excel中只選擇幾列來拉入ODBC-JDBC連接?

try { 
     Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); 
     Connection connect = DriverManager.getConnection("jdbc:odbc:Book1"); 
     Statement st = connect.createStatement(); 
     ResultSet result_set = st.executeQuery("SELECT * FROM A3:P30"); 
     ResultSetMetaData md = result_set.getMetaData(); 
     int columns = md.getColumnCount(); 
     for (int i = 1; i <= columns; i++) { 
      columnNames.addElement(md.getColumnName(i)); 
     } 
     while (result_set.next()) { 
      Vector row = new Vector(columns); 
      for (int i = 1; i <= columns; i++) 
       row.addElement(result_set.getObject(i)); 
      data.addElement(row); 
     } 
     result_set.close(); 
     st.close(); 
    } catch (Exception e) { 
     System.out.println(e); 
    } 

Book1,我有27項是在那裏P30來自.. 謝謝提前!

+0

你試過了什麼選項?請在這裏提到 –

+0

我已經嘗試將查詢更改爲'st.executeQuery(「SELECT * FROM A,D,E,F」)''等我需要的列。此外,'st.executeQuery(「SELECT * FROM#A3:A30,#D3:D30,#E3:E30,#F3:F30」)具有相同的列。 –

回答

0

如果你有一個像Last, Previous, Close, High等的標題行中使用

select [Last],[Previous],[Close],[High] from [SheetName$] 

我們使用相同的代碼和工作正常。

+0

問題在於,當我在Escel中刷新所有數據時,默認標題回來看起來像這樣:[this](http://postimg.org/image/9hqxsyprh/)。所以根據Excel,「Last」,「Previous Close」等不是實際的標題。 –

相關問題