array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'ru', ), 'this' => array ( 0 => 'function.odbc-statistics.php', 1 => 'odbc_statistics', ), 'up' => array ( 0 => 'ref.uodbc.php', 1 => 'Функции ODBC', ), 'prev' => array ( 0 => 'function.odbc-specialcolumns.php', 1 => 'odbc_specialcolumns', ), 'next' => array ( 0 => 'function.odbc-tableprivileges.php', 1 => 'odbc_tableprivileges', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'ru', 'path' => 'reference/uodbc/functions/odbc-statistics.xml', ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); ?>
(PHP 4, PHP 5, PHP 7, PHP 8)
odbc_statistics — Получает статистику о таблице
$odbc
,$catalog
,$schema
,$table
,$unique
,$accuracy
Получает статистику о таблице и её индексах.
odbc
Идентификатор соединения ODBC, за подробностями обращайтесь к odbc_connect().
catalog
Каталог ('qualifier' на языке ODBC 2).
schema
Схема ('owner' на языке ODBC 2).
table
Имя таблицы.
unique
Тип индекса.
Одна из констант SQL_INDEX_UNIQUE
или
SQL_INDEX_ALL
.
accuracy
Одна из констант SQL_ENSURE
или
SQL_QUICK
. Последняя запрашивает у драйвера
получение CARDINALITY
и PAGES
,
только если они легко доступны с сервера.
Возвращает идентификатор результата ODBC или false
, если возникла ошибка.
В результирующем наборе имеются следующие столбцы:
TABLE_CAT
TABLE_SCHEM
TABLE_NAME
NON_UNIQUE
INDEX_QUALIFIER
INDEX_NAME
TYPE
ORDINAL_POSITION
COLUMN_NAME
ASC_OR_DESC
CARDINALITY
PAGES
FILTER_CONDITION
Результирующий набор упорядочивается по NON_UNIQUE
,
TYPE
, INDEX_QUALIFIER
,
INDEX_NAME
и ORDINAL_POSITION
.
Пример #1 Вывод статистики о таблице
<?php
$conn = odbc_connect($dsn, $user, $pass);
$statistics = odbc_statistics($conn, 'TutorialDB', 'dbo', 'TEST', SQL_INDEX_UNIQUE, SQL_QUICK);
while (($row = odbc_fetch_array($statistics))) {
print_r($row);
break; // последующие строки опущены для краткости
}
?>
Вывод приведённого примера будет похож на:
Array ( [TABLE_CAT] => TutorialDB [TABLE_SCHEM] => dbo [TABLE_NAME] => TEST [NON_UNIQUE] => [INDEX_QUALIFIER] => [INDEX_NAME] => [TYPE] => 0 [ORDINAL_POSITION] => [COLUMN_NAME] => [ASC_OR_DESC] => [CARDINALITY] => 15 [PAGES] => 3 [FILTER_CONDITION] => )