Есть пустой SQLContainer, подключенный к TableQuery. Есть Grid, подключенный к контейнеру. Как определить обязательность(isNullable) заполнения каждого свойства в контейнере или колонки в гриде?
Первое, не использовать SQLContainer, второе использовать JPA и BeanValidation API
Андрис, ну вашу позицию по разработке баз данных я уже знаю…Я использую Vaadin для разработки исключительно, что это максимально приближено к Delphi и пока все вроде отлично, кроме обозначенной проблемы. В Delphi на датасурсе есть типа columninfo, откуда все эта информация и достается. А здесь разбили на куски информации, а ту что нудно вообще достать не могу…
В таком случае вам придётся делать всё “ручками”. Я имею в виду, что разбирать ResultSet с помощью
ResultSetMetaData. Там эта информация есть.
Вот это интересно. Как мне до этого объекта добраться?
Все разобрался - все работает!!! Спасибо за наводку))) Я главное боялся, что на пустой таблице вернет null, но нет все супер метаданные цепляются!!!
try {
Statement statement = dbConnect.createStatement();
String selectTableSQL = "SELECT * FROM "+table_name+" LIMIT 1";
rs = statement.executeQuery(selectTableSQL);
rsmd = rs.getMetaData();
} catch (SQLException e) {
e.printStackTrace();
}
и далее в цикле
[code]
col = rs.findColumn(contarray[k]
.getContainerPropertyIds().toArray()[i]
.toString());
nullable = rsmd.isNullable(col);
[/code]