首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >resultSet如何存储值

resultSet如何存储值
EN

Stack Overflow用户
提问于 2014-04-25 20:26:44
回答 2查看 596关注 0票数 1

我正在运行一个加载到ResultSet中的查询。当我从ResultSet创建对象时,我使用ResultSet的各种get方法。ResultSet是否将所有值存储为String,而不管它们在DB中定义了什么?因此,如果查询的结果是数字1,我可以调用

代码语言:javascript
复制
rs.getString("result");
AND
rs.getInt("result");

还是ResultSet的get方法必须对应正确的类型?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-04-25 20:37:14

这里重要的是将接收返回值的变量的类型。

例如,可以在返回int值的列中使用rs.getString(),因为数字是有效的字符串值("1234“、"23,45”等)。

但是不能在具有字符串值的列中使用rs.getInt(),因为返回的值对int变量无效。

MySQL帮助有关于此的更多信息:

通常,任何MySQL数据类型都可以转换为java.lang.String,任何数值类型都可以转换为任何Java数值类型,尽管可能会出现舍入、溢出或精度下降的情况。 这些MySQL数据类型总是可以转换成这些类型:

  • CHAR,VARCHAR,BLOB,TEXT,ENUM和SET:java.lang.String,java.io.InputStream,java.io.Reader,java.sql.Blob,java.sql.Clob
  • 浮点数,实数,双精度,数字,十进制,TINYINT,SMALLINT,MEDIUMINT,整数,BIGINT:java.lang.String,java.lang.Short,java.lang.Integer,java.lang.Long,java.lang.Double,java.math.BigDecimal
  • 日期,时间,日期时间,时间戳:java.lang.String,java.sql.Date,java.sql.Timestamp

这里有更多的信息

票数 2
EN

Stack Overflow用户

发布于 2014-04-25 20:30:40

是的,是的。您可以作为一个MySQL从java.lang.String获得一个INT,并且类型具有映射。

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

希望这能有所帮助

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23302401

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档