繁体   English   中英

是否可以通过php中的PDO OCI查询获取列格式?

[英]Is it possible to get column format through a PDO OCI query in php?

在php5中,我有一个oracle查询..假设

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

我想通过PDO OCI根据每一列的类型来格式化表格

month = varchar maxdate = date total_cash =数字

有没有办法从Oracle获取列类型? 因为我的查询可以更改,所以我无法查看oracle系统表中的类型:列可以是列的计算或串联

谢谢

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

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

如果您在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和其他值用作优化程序的输入。

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

但是,它需要驱动程序支持,而我不能担保Oracle驱动程序。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM