簡體   English   中英

用數據庫內容填充SWT表

[英]populate SWT table with database content

我正在使用PhpMyAdmin將數據保存在數據庫中。 我有一個SWT表來填充數據庫內容。

這是我的代碼。

public static void fetchDatafromDB(String StartIndex, String FinalIndex) {
    try {
        Class.forName(GlobalVariables.SQL_driver).newInstance();
        Connection conn = DriverManager.getConnection(GlobalVariables.DB_url + GlobalVariables.DB_name, GlobalVariables.DB_Username, GlobalVariables.DB_password);
        Statement st = conn.createStatement();
        String query = "SELECT  `From`, `To`, `IDno`, `TimeStamp` FROM `callsheet` WHERE TimeStamp BETWEEN '" + StartIndex + "' AND '" + FinalIndex + "'";
        ResultSet rs = st.executeQuery(query);
        java.sql.ResultSetMetaData rsmd = rs.getMetaData();
        int columnsNumber = rsmd.getColumnCount();
        while (rs.next()) {
            for (int i = 1; i <= columnsNumber; i++) {
                // System.out.print(rs.getString(i));
                item.setText(i, rs.getString(i));
            }
            // System.out.println();
        }
    } catch (Exception P) {
        P.printStackTrace();
    }
}

有效。

現在我在將swt表中的數據庫內容制表時遇到了一些問題。 我的程序要做的是,它將一行(一一對應)設置數據庫的選定內容(由上述程序中的限制定義),但我希望將數據庫表的下一行記錄在SWT表的下一行中。 您能提出一些建議嗎? 我的swtTable的屏幕截圖

它看起來應該像這樣:

public static void fetchDatafromDB(String startIndex, String finalIndex) {
    try {
        Class.forName(GlobalVariables.SQL_driver).newInstance();
        Connection conn = DriverManager.getConnection(GlobalVariables.DB_url + GlobalVariables.DB_name, GlobalVariables.DB_Username, GlobalVariables.DB_password);
        Statement st = conn.createStatement();
        String query = "SELECT  `FROM`, `To`, `IDno`, `TimeStamp` FROM `callsheet` WHERE TimeStamp BETWEEN '" + startIndex + "' AND '" + finalIndex + "'";
        ResultSet rs = st.executeQuery(query);
        java.sql.ResultSetMetaData rsmd = rs.getMetaData();
        int columnsNumber = rsmd.getColumnCount();

        TableItem item;
        while (rs.next()) {
            // Create a new TableItem for each entry in the result set (each row)
            item = new TableItem(table, SWT.NONE);
            for (int i = 1; i <= columnsNumber; i++) {
                // Populate the item (mind the index!!)
                item.setText(i - 1, rs.getString(i));
            }
        }
    } catch (Exception e) {
        e.printStackTrace();
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM