在PHP中,postgre结果中的每一列都有一种获取表名的方法吗?
假设您有一个select with join,例如:
$Q = <<<E2OD
SELECT * FROM user U
LEFT JOIN department D ON U.department_id = D.id
E2OD;
在PHP/FirebirdSQL中:
$R = ibase_query($Q);
$D = ibase_fetch_row($R);
$info = ibase_field_info($R, 0);
退换商品
Array
(
[0] => id
[name] => id
[1] => id
[alias] => id
[2] => user
[relation] => user
[3] => 8
[length] => 8
[4] => BIGINT
[type] => BIGINT
)
在PHP/PostgreSQL中:
$select = $DB->query($Q);
$meta = $select->getColumnMeta(0);
退换商品
Array
(
[pgsql:oid] => 20
[native_type] => int8
[name] => id
[len] => 8
[precision] => -1
[pdo_type] => 2
)
如您所见,没有关于该列来自的表的信息。钥匙丢了
[relation] => user
或类似的显示表名。
http://php.net/manual/en/pdostatement.getcolumnmeta.php
PHP可以通过PG或PDO库获得这些信息吗?PostgreSQL是否向客户端库提供此信息?要做到这一点需要做些什么?
谢谢你的提示,
米查尔