ResultSet метаданные .getcolumnname - PullRequest
0 голосов
/ 19 октября 2019

Я пытаюсь получить все имена полей / столбцов набора результатов. код был вставлен ниже. возвращает ошибку [комбинация типа курсора / параллелизма не поддерживается].

SQL = dbConnectionSQLServer.getCN().prepareStatement("Select * From Coa32");
            RS = SQL.executeQuery();
            ResultSetMetaData metaData = RS.getMetaData();

            //Generate table header.
            for (int j = 0; j < RS.getMetaData().getColumnCount(); j++) {
//                System.out.println("Colum Count : " + metaData.getColumnCount() + ", Column Name (1) : " + metaData.getCatalogName(j));
                tableHeaderNames.add(new ColumnModel("header "+j, " col:"+ metaData.getColumnName(j)));


   }

1 Ответ

0 голосов
/ 19 октября 2019
    tableData = new ArrayList< Map<String, ColumnModel> >();
    tableHeaderNames = new ArrayList<ColumnModel>();
    Statement SQL = dbConnectionSQLServer.getCN().createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE);

    RS = SQL.executeQuery("Select * From Coa32");

    for (int j = 0; j < RS.getMetaData().getColumnCount(); j++) {
    System.out.println("Start:");
        tableHeaderNames.add(new ColumnModel("header "+j, " col:"+ RS.getMetaData().getColumnLabel(1)));
    System.out.println("End:");
    }

Нашли решение, изменив тип оператора на Senstive и обновляемый.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...