报错:
org.apache.flink.table.api.ValidationException: Column types of query result and sink for registered table ‘default_catalog.default_database.表名字’ do not match.
Cause: Incompatible types for sink column ‘字段名字’ at position 9.
报错原因:
最终输出的数据类型与 要插入的表的数据类型不一致,这里说的不一致指,在sql中创建的catalog,source表,create table 的字段类型 A varchar,与 要插入的数据 123 int 不一致 导致的报错。
发生地址:
flinksql的 数据插入sink表的时候
解决方案:
将数据做类型转换 cast (A as varchar)。
注意
这里要注意 create table的字段类型,与最终的输出数据库 如 mysql里的字段类型是否一致,有些类型 如 库里是varchar ,catalog创建的是int 它可以自动强转,但有的是不能强转的 需要注意
FlinkSQL错误:查询结果和注册表列类型不匹配
在尝试将数据插入FlinkSQL的sink表时,遇到了ValidationException异常,原因是查询结果的列类型与注册表'default_catalog.default_database.表名字'的列类型不匹配。具体表现为字段'字段名字'在第9个位置的类型不兼容。解决方案是使用cast函数将数据转换为正确的类型,例如cast (A as varchar)。确保创建表的字段类型与最终数据库中的字段类型一致,避免无法自动转换的情况。
2451

被折叠的 条评论
为什么被折叠?



