ADOdbは、単一の表に関連付けられたオブジェクトのスキーマの問合せであるため、ビューのmetaColumns()オブジェクトを提供できません。
あなたは、Northwindを次のように、fetchField()方法を用いて使用してビューとmetaColumns()をエミュレートすることができる:
ADOFieldObject Object
(
[name] => employeeId
[max_length] =>
[type] => int
[column_source] => employeeId
)
ADOFieldObject Object
(
[name] => TerritoryId
[max_length] => 20
[type] => nvarchar
[column_source] => TerritoryId
)
:
$SQL = " CREATE VIEW vEmpTerritories AS
SELECT employees.employeeId, EmployeeTerritories.TerritoryId
FROM employees, EmployeeTerritories
WHERE EmployeeTerritories.employeeId = employees.employeeId";
$db->execute($SQL);
$SQL = "SELECT * FROM vEmpTerritories";
$f = $db->execute($SQL);
$recordSet = $db->Execute($SQL);
$cols = $recordSet->fieldCount();
for($i=0;$i<$cols;$i++){
$fld = $recordSet->FetchField($i);
print_r($fld);
}
これは、各列についての基本的な情報とADOfieldObjectsの配列を返します
残念ながら、fetchfield()から返されるデータはmetaColumnsほど詳細ではありませんが、必要であれば十分です。