赞
踩
在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 aspc_file t
时间: 7.658s
结论:在不同数据库之前迁移sql的过程中,一定要注意数据库的差异。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。