当前位置:   article > 正文

MySql错误:[Err] 1292 - Truncated incorrect DOUBLE 原因及解决_1292 - truncated incorrect double value: 'undefine

1292 - truncated incorrect double value: 'undefined', time: 1.143000s

在oracle中写了一段sql,执行没问题,迁移到mysql的过程中,替换了字段名的双引号,但是忘了将oracle的连接字符串运算“||”替换成mysql的concat。

sql节选如下:

 CREATE TABLE `pc_way` AS
 SELECT
`26` || `27` || `28` || `29` seq_no,
`30` || `31` || `32` || `33` || `34` fix_id,
……
`105` || `106` || `107` RVSM_Minimum_Level,
`108` || `109` || `110` VSF_RVSM_Maximum_Level,
t.*
FROM
pc_file t

然后执行就报了

[Err] 1292 - Truncated incorrect DOUBLE

单独执行select并不报错。

多方搜索无果,大多数都是因为查询条件传错类型啊,或者字段指定错了类型什么的。忽然看到一篇文章提到“连接字符串”。顿悟。

sql改成:

create table pc_way_c as  
SELECT
CONCAT(`26` , `27` , `28` , `29`) seq_no,
CONCAT(`30` , `31` , `32` , `33` , `34`) fix_id,
……
CONCAT(`105` , `106` , `107`) RVSM_Minimum_Level,
CONCAT(`108` , `109` , `110`) VSF_RVSM_Maximum_Level
FROM

pc_file t


然后就执行通过了:

受影响的行: 100033

时间: 7.658s


结论:在不同数据库之前迁移sql的过程中,一定要注意数据库的差异。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小小林熬夜学编程/article/detail/607063
推荐阅读
相关标签
  

闽ICP备14008679号