Sql - typ i rozmiar tabeli

0

Jak pobrać typ i rozmiar konkretnej tabeli z bazy ? Mam 2 sposoby, ale oba są nieco na około.

Można zrobić tak:

 
DatabaseMetaData metadata = connection.getMetaData();
ResultSet resultSet = metadata.getColumns(null, null, "users", null);
while (resultSet.next()) {
    String type = resultSet.getString("TYPE_NAME");
    int size = resultSet.getInt("COLUMN_SIZE");

}

Ale ja chce się odwołac od razu do konkretnej kolumny, bez potrzeby przeglądania wszystkiego.

Drugi sposób to:

 
    ResultSet rsColumns = stmt.executeQuery("select * from tabela");
    ResultSetMetaData rsMeta = rsCommerceColumns.getMetaData();
    int type = commerceRsMeta.getColumnType(getColumnOrdinalPosition(tableName, columnName));
    int position = commerceRsMeta.getPrecision(getColumnOrdinalPosition(tableName, columnName));

Ale tu muszę pobrać jakieś dane .. próbowałem wyciągnąć ResultSet metodą z piewszego przykładu, czyli

 metadata.getColumns(null, null, "users", null);

ale zwraca dziwne wyniki. Swoją droga jak pobrać numer tabli jedną metodą ? Pokombinowałem też pod kątem czegoś takiego

DatabaseMetaData commerceDbMeta = commerceConnect.getMetaData();
rsCommerceColumns = commerceDbMeta.getSchemas();

ale też bez efektu. Można więc w prosty sposób pobrać typ i rozmiar konkretnej tabeli ? Trzeba chyba pobrać odpowiednio ResultSet, bez konieczności pobierania danych ... jako sam schemat - i wtedy mozna użyć ResultSetMetaData.

0

moze pokombinuj z samym sqlem? tj zobacz czy da sie napisac zapytanie ktore Ci zwroci to czego oczekujesz - a po str javy potem zwykle executeQuery.

ps. co rozumiesz przez typ i rozmiar tabeli? typ to ze np InnoDb? a rozmiar tabeli-ile kolumn ma?

0

Kilka poprawek się należy do powyższego posta. Nie typ i rozmiar tabeli, tylko kolumny tabeli. I kilka nazw zmiennych się różni mimo, że chodzi o tą samą.

0

Skup się i opisz problem tak by można go było zrozumieć.

0

"Skup się i opisz problem tak by można go było zrozumieć." Nie rań mnie człowieku. Jak nie rozumiesz problemu, to to nie jest forum dla ciebie. Napisałem gdzie się pomyliłem .. pisałem w pośpiechu - poza tym wszystko jest przejrzyste i zrozumiałe. Masz 2 przykłady rozwiązania problemu, ale szukam alternatywy - tak jak napisałem. Jak ktoś ma w głowie zapytanie sql, które pobiera rozmiar tabeli to chętnie zobaczę przykład.

Errata:
rozmiar tabeli - rozmiar kolumny tabeli

ehhh

1 użytkowników online, w tym zalogowanych: 0, gości: 1