ORA-00932:不一致的数据类型:预期的CHAR得到了ARRAY

时间:2016-03-22 19:42:53

标签: php oracle types ora-00932

我正在尝试通过PHP获取数组,但我收到以下错误:

" Warning: oci_fetch_array(): ORA-00932: inconsistent datatypes: 
 expected CHAR got ARRAY in  test.php".

我希望使用任何可用的集合方法在我的程序中使用VARRAY列。该查询与Toad运行良好,但与PHP无关。

Query : SELECT myfunarr(array_of_varchar('a', 'b')) FROM DUAL

此处array_of_varchar是我的VARRAY系列。

有任何解决此问题的提示吗?

1 个答案:

答案 0 :(得分:0)

  • 创建一个函数,将myfunarr(array_of_varchar('a', 'b'))的值作为输入,并根据其值生成查询字符串

  • 通过函数

  • 返回此查询字符串
  • 使用此返回的查询通过PHP
  • 执行SQL

<强>例如

参数是在函数createQuery($ tab_name)

中传递的$tab_name

使用此查询:"Select $tab_name from dual"

返回此查询并进入$query = createQuery(myfunarr(array_of_varchar('a', 'b')));

执行此$query