Как resultSet хранит значения

1

Я запускаю запрос, который загружается в ResultSet. Когда я создаю свой объект из ResultSet, я использую различные методы получения ResultSet. Сохраняет ли ResultSet все значения в виде строк независимо от того, что они определены, как в БД? Поэтому, если результатом запроса является число 1, я могу позвонить

rs.getString("result");
AND
rs.getInt("result");

?

Или метод get ResultSet должен соответствовать правильному типу?

  • 0
    возможный дубликат stackoverflow.com/questions/5157476/…
  • 2
    @ Мистер Пандей Не согласен.
Показать ещё 2 комментария
Теги:

2 ответа

2
Лучший ответ

Здесь важно указать тип переменной, которая получит возвращаемое значение.

Например, вы можете без проблем использовать rs.getString() в столбце, возвращающем значения int, поскольку числа являются допустимыми строковыми значениями ("1234", "23,45" и т.д.).

Но вы не можете использовать rs.getInt() в столбце со строковыми значениями, потому что возвращаемое значение будет недопустимым для переменной int.

У справки MySQL есть больше информации об этом:

В общем, любой тип данных MySQL может быть преобразован в java.lang.String, и любой численный тип может быть преобразован в любой из числовых типов Java, хотя может произойти округление, переполнение или потеря точности.

Эти типы данных MySQL всегда могут быть преобразованы в эти типы Java:

  • CHAR, VARCHAR, BLOB, TEXT, ENUM и SET: java.lang.String, java.io.InputStream, java.io.Reader, java.sql.Blob, java.sql.Clob

  • FLOAT, REAL, DOUBLE PRECISION, NUMERIC, DECIMAL, TINYINT, SMALLINT, MEDIUMINT, INTEGER, BIGINT: java.lang.String, java.lang.Short, java.lang.Integer, java.lang.Long, java.lang.Double, java.math.BigDecimal

  • DATE, TIME, DATETIME, TIMESTAMP: java.lang.String, java.sql.Date, java.sql.Timestamp

Больше информации здесь

4

Да и да. Вы можете получить INT из MySQL как java.lang.String, а типы имеют сопоставления

https://dev.mysql.com/doc/refman/5.0/es/connector-j-reference-type-conversions.html

Надеюсь это поможет

Ещё вопросы

Сообщество Overcoder
Наверх
Меню