开发者社区 > 大数据与机器学习 > 实时计算 Flink > 正文

Flink CDC 在sql中读取怎样才可以读取到TINYINT 的值呢?

Flink CDC oceanbase中 关键字 BOOL/BOOLEAN 是 TINYINT 的同义词,我使用oceanbase查询时TINYINT 会报错 org.apache.flink.util.FlinkRuntimeException: java.lang.RuntimeException: Failed to convert field 'status' with value: true ,在sql中读取怎样才可以读取到TINYINT 的值呢?

展开
收起
真的很搞笑 2023-09-12 18:19:29 65 0
1 条回答
写回答
取消 提交回答
  • 在Flink CDC OceanBase中,关键字BOOL/BOOLEAN是TINYINT的同义词。当您使用OceanBase查询时,如果将TINYINT值作为布尔值进行读取,可能会导致类型转换错误。

    要正确读取TINYINT的值,您可以使用CAST函数将TINYINT值转换为INT或其他类型。以下是一个示例:
    ```SELECT CAST(status AS INT) AS status FROM your_table;

    ```
    在上面的示例中,我们使用CAST函数将TINYINT类型的status列转换为INT类型。您可以根据需要将其转换为其他适合的类型。

    通过这种方式,您可以正确读取TINYINT类型的值,避免类型转换错误导致的异常。

    2023-10-20 14:24:24
    赞同 展开评论 打赏

实时计算Flink版是阿里云提供的全托管Serverless Flink云服务,基于 Apache Flink 构建的企业级、高性能实时大数据处理系统。提供全托管版 Flink 集群和引擎,提高作业开发运维效率。

相关产品

  • 实时计算 Flink版
  • 热门讨论

    热门文章

    相关电子书

    更多
    SQL Server 2017 立即下载
    GeoMesa on Spark SQL 立即下载
    原生SQL on Hadoop引擎- Apache HAWQ 2.x最新技术解密malili 立即下载