получение имен столбцов в JDBC - PullRequest
4 голосов
/ 01 августа 2011

Мне было интересно, как определить, существует ли столбец с определенным именем в определенной таблице базы данных. Я использую JDBC, но если это можно сделать с помощью чистого SQL, это даже лучше. Однако решение должно быть независимым от СУБД-провайдера. Я думаю, что я мог бы сделать это, запросив первую строку таблицы и получив ResultSetMetaData из нее, но это предполагает, что в таблице есть строка. Я бы тоже хотел, чтобы он работал с пустой таблицей. Заранее спасибо!

Ответы [ 3 ]

12 голосов
/ 01 августа 2011

Вы можете получить их от DatabaseMetaData.

DatabaseMetaData meta = connection.getMetaData();
ResultSet rs = meta.getColumns(...);
2 голосов
/ 01 августа 2011

Вы можете получить общую информацию о структуре базы данных с помощью интерфейса java.sql.DatabaseMetaData.

DatabaseMetaData dbmeta = con.getMetaData();

вызовите getColumns (), чтобы получить описание доступных столбцов таблицы.

2 голосов
/ 01 августа 2011

Неважно, если таблица пуста. ResultSetMetaData по-прежнему будет предоставлять вам информацию о типах и свойствах столбцов в объекте ResultSet.

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