是否有可能通过PHP中的PDO OCI查询获取列格式?

时间:2011-03-22 08:50:13

标签: php oracle pdo oci

在php5中, 我有一个oracle查询..让我们说

select month,max(mydate) as maxdate,sum(cash) as total_cash from mytable group by month

我希望通过PDO OCI根据每列的类型格式化表格

月= VARCHAR 的maxDate =日期 total_cash =数目

有没有办法从Oracle获取列类型?由于我的查询可以更改,我无法在oracle系统表中查找类型:列可以是列的计算或连接

由于

3 个答案:

答案 0 :(得分:0)

在Oracle中,有一些系统视图可供您查询此信息。

SELECT column_name, data_type FROM dba_tab_columns WHERE table_name = 'mytable';

答案 1 :(得分:0)

如果您在Oracle数据库中拥有有限的权限,您仍然可以通过查询

找到数据类型
select owner, table_name, column_name, data_type, data_length, data_precision, data_scale, nullable
 from all_tab_columns where table_name = 'MYTABLE';

该视图中有更多感兴趣的列,例如last_analyzed和其他值用作优化器的输入。

答案 2 :(得分:0)

在PDO中执行此操作的官方方法是在执行查询后调用PDOStatement::getColumnMeta()。在结果集中每列调用一次,其中第0列是第一列。

但它需要驱动程序支持,我无法保证Oracle驱动程序。