Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
sql位到Java_Java_Sql Server_Jdbc_Types_Type Conversion - Fatal编程技术网

sql位到Java

sql位到Java,java,sql-server,jdbc,types,type-conversion,Java,Sql Server,Jdbc,Types,Type Conversion,我的sqlserver表有一个设计为BIT数据类型的列。它的值为1和0 然后在我的Java代码中,我做到了 result = new ArrayList result.add( (Boolean)(rs.getBoolean("columnName"))); 然后,当我从列表中读取值时,它显示为Long。 根据我找到的所有信息,它表明位数据类型应该映射到布尔值 为什么它的长度是Long? 如何解决此问题?您可以直接调用getBoolean,让它处理所有的强制转换/转换: result.add(

我的sqlserver表有一个设计为BIT数据类型的列。它的值为1和0

然后在我的Java代码中,我做到了

result = new ArrayList
result.add( (Boolean)(rs.getBoolean("columnName")));
然后,当我从列表中读取值时,它显示为
Long
。 根据我找到的所有信息,它表明
数据类型应该映射到
布尔值

为什么它的长度是
Long


如何解决此问题?

您可以直接调用
getBoolean
,让它处理所有的强制转换/转换:

result.add(rs.getBoolean("columnName"));

嘿很抱歉我打错了。我是按你说的那样称呼它的。我叫getBoolean。。不仅仅是“得到”。它在一个列表中的长度是
getBoolean
返回一个
boolean
。它无法返回
Long
。也许您正在调用
getObject
?它返回布尔值,我可以在eclipse调试器中看到值true/false-检查元素。但是,当我从列表中检索该值时(我将其添加到结果列表中),它的值为1或0(代替true/false)。这就是问题所在!!你能展示一下你是如何使用这个列表的吗?Java并没有将布尔型提升为开箱即用的长型。谢谢。我发现问题出在另一个地方。显然,我的部署已经损坏,我正在“重新部署”旧版本——认为它是一个固定版本。:)根据您对@mureinik的评论,您似乎还没有发布导致问题的代码。请编辑您的问题,以包括您发现此布尔值已更改为长值的程序部分。