千家信息网

Oracle函数之单列合并函数WM_CONCAT问题记录

发表于:2025-02-03 作者:千家信息网编辑
千家信息网最后更新 2025年02月03日,不同版本的数据库直接此函数返回类型不一致导致程序映射错误:1. 错误信息:Cause: java.sql.SQLSyntaxErrorException: ORA-01790: 表达式必须具有与对应表
千家信息网最后更新 2025年02月03日Oracle函数之单列合并函数WM_CONCAT问题记录

不同版本的数据库直接此函数返回类型不一致导致程序映射错误:

1. 错误信息:

Cause: java.sql.SQLSyntaxErrorException: ORA-01790: 表达式必须具有与对应表达式相同的数据类型


2.不同版本直接进行比较

2.1 10g测试如下

SELECT*FROM V$VERSION;


SELECT WM_CONCAT(T.DNAME) FROM DEPT T



2.2 11g测试如下:




3.修复方法《使用TO_CHAR函数进行转换》

SELECT TO_CHAR(WM_CONCAT(T.DNAME)) FROM DEPT T;SELECT TO_CHAR(SUBSTR(WM_CONCAT(T.DNAME),1,2000)) FROM DEPT T;


0