Java MySQL列类型在我运行时返回decimal或bigint;选择0作为列..”;

Java MySQL列类型在我运行时返回decimal或bigint;选择0作为列..”;,java,mysql,jdbc,Java,Mysql,Jdbc,当我运行select语句时,如 SELECT 0 AS COL FROM MYTABLE .. 两个不同的mysql安装返回不同的数据类型。一个返回BIGINT,另一个是DECIMAL。对于这两种情况,jdbc驱动程序是相同的,com.mysql.jdbc.driver 5.1 服务器版本: 5.1.69-社区(返回BIGINT) 5.6.31(返回小数) 是否存在任何配置差异?我必须在两次安装中都安装BIGINT。它与mysql版本直接相关吗?您可以使用 select CAST(0 AS

当我运行select语句时,如

SELECT 0 AS COL FROM MYTABLE ..
两个不同的mysql安装返回不同的数据类型。一个返回BIGINT,另一个是DECIMAL。对于这两种情况,jdbc驱动程序是相同的,com.mysql.jdbc.driver 5.1

服务器版本: 5.1.69-社区(返回BIGINT) 5.6.31(返回小数)


是否存在任何配置差异?我必须在两次安装中都安装BIGINT。它与mysql版本直接相关吗?

您可以使用

 select CAST(0 AS UNSIGNED INTEGER) AS COL

无符号整数在导线上显示为bigint。

您使用的是JDBC吗?如果是这样的话,我希望它依赖于您正在使用的JDBC版本(它可能由MySQL提供)。@Ole V.V.是的,它的JDBC com.MySQL.JDBC.Driver 5.1Version 5.1.69于2013年4月18日发布。升级时间到了?是的,它们是不同的版本:一个是5.1.69-community(返回bigint)5.6.31(返回decimal)没问题,但我的应用程序中有太多的点使用SELECT 0作为。不可能在合理的时间内全部改变。