3

JTableデータベースにも同じ列名が表示されるため、SQL Server データベースからのデータを表示するヘッダーを変更したいと考えています。列名ではなく、データ自体が必要です。

データを表示するために使用したコードは次のとおりです。

public void search() throws Exception{
        Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
            String url = "jdbc:odbc:*****";
            String user = "*****";
            String pass = "*****";
            Connection con =  DriverManager.getConnection(url, user, pass);
            Statement state = con.createStatement();
            ResultSet rs = state.executeQuery("SELECT * FROM dbo.Patients");
            ResultSetMetaData rsmetadata = rs.getMetaData();
            int columns = rsmetadata.getColumnCount();
            DefaultTableModel dtm = new DefaultTableModel();
            Vector column_name = new Vector();
            Vector data_rows = new Vector();

            for (int i=1; i<columns;i++){
                column_name.addElement(rsmetadata.getColumnName(i));
            }
            dtm.setColumnIdentifiers(column_name);

            while(rs.next()){
                data_rows = new Vector();
                for (int j=1; j<columns; j++){
                data_rows.addElement(rs.getString(j));
                }
                dtm.addRow(data_rows);
            }
            tblPatient.setModel(dtm);
    }

これが結果です:

これ

その pIDNo を患者 ID に、pLName を姓に、pFName を名に、というように変更したいと考えています。

4

2 に答える 2

4

に変更するSELECT * FROM dbo.PatientsSELECT pIDNo AS 'Patient ID', pLName AS '.... が最も簡単な方法です。また、使用する代わりに列名に名前を付ける*方が高速です。

于 2013-04-08T04:43:48.923 に答える
4

私はあなたの選択を変更しようとします:

代わりは

SELECT * FROM dbo.Patients

使用する

SELECT pId as "Patient ID", ...

于 2013-04-08T04:38:43.483 に答える