С расширением mysqli для PHP я мог бы использовать метод fetch_field()
, чтобы получить в результате исходные (несвязанные) имена столбцов и таблиц через orgname
и orgtable
.PDO предоставляет метод getColumnMeta()
, но не предоставляет информации об исходных именах таблиц и столбцов;он возвращает только псевдонимы.
Есть ли альтернативы для получения этой информации с помощью PDO?Я думал о разборе информации из SQL-запроса, но я надеюсь, что есть более красивые решения ...
SELECT id AS col1, session AS col2 FROM sessions AS table1;
Результаты с использованием PDOStatement::getColumnMeta()
:
Array
(
[native_type] => LONG
[flags] => Array
(
[0] => not_null
[1] => primary_key
)
[table] => table1
[name] => col1
[len] => 10
[precision] => 0
[pdo_type] => 2
)
Array
(
[native_type] => VAR_STRING
[flags] => Array
(
[0] => not_null
[1] => unique_key
)
[table] => table1
[name] => col2
[len] => 32
[precision] => 0
[pdo_type] => 2
)