用PHP(Yii2)显示Oracle抽象数据类型(ADT)

用PHP(Yii2)显示Oracle抽象数据类型(ADT),php,oracle,yii2,Php,Oracle,Yii2,我需要在我的应用程序中使用抽象数据类型(Object,VARRAY)。 我设法在我的视图中实现了它,但当我尝试用PHP(Yii2)获取db数据时,我遇到了如下错误: oci_fetch_all():ORA-00932:不一致的数据类型:应为CHAR got ADT 不一致的数据类型:预期字符获得ADT ORA-22950:无法在没有映射或排序方法的情况下排序对象 有没有办法在PHP中获取存储为ADT(Object,VARRAY,…)的数据 更新: 我通过查询从数据库获取数据: $result =

我需要在我的应用程序中使用抽象数据类型(Object,VARRAY)。 我设法在我的视图中实现了它,但当我尝试用PHP(Yii2)获取db数据时,我遇到了如下错误:

oci_fetch_all():ORA-00932:不一致的数据类型:应为CHAR got ADT
不一致的数据类型:预期字符获得ADT

ORA-22950:无法在没有映射或排序方法的情况下排序对象

有没有办法在PHP中获取存储为ADT(Object,VARRAY,…)的数据

更新:

我通过查询从数据库获取数据:

$result = (new Query)
    ->select('p.*')->from('MY_VIEW p')->all();
我的SQL文件包含:

CREATE OR REPLACE TYPE my_object AS OBJECT (
    fiedl1 VARCHAR2(255),
    fiedl2 VARCHAR2(255)
);

CREATE OR REPLACE FUNCTION my_function
    RETURN my_object 
    IS
    BEGIN
        RETURN(my_object(FIELD1','FIELD2'));
    END;



create or replace view MY_VIEW as
    SELECT *, my_function() as adt_field FROM ...

共享用于获取和排序数据的查询data@Tejash我更新了我的postShare查询,您正在使用该查询获取和排序data@Tejash我更新了我的帖子