PHP 8.5.0 Alpha 2 available for testing

odbc_statistics

(PHP 4, PHP 5, PHP 7, PHP 8)

odbc_statisticsCálculo de estadísticas sobre una tabla

Descripción

odbc_statistics(
    Odbc\Connection $odbc,
    ?string $catalog,
    string $schema,
    string $table,
    int $unique,
    int $accuracy
): Odbc\Result|false

Cálculo de estadísticas sobre una tabla.

Parámetros

odbc

El objeto de conexión ODBC, ver la documentación de la función odbc_connect() para más detalles.

catalog

El catálogo ('calificativo' en el argot ODBC 2).

schema

El esquema ('propietario' en el argot ODBC 2).

table

El nombre de la tabla.

unique

El tipo del índice. Uno de SQL_INDEX_UNIQUE o SQL_INDEX_ALL.

accuracy

Uno de SQL_ENSURE o SQL_QUICK. Este último solicita al controlador que recupere CARDINALITY y PAGES solo si están inmediatamente disponibles desde el servidor.

Valores devueltos

Devuelve un objeto de resultado ODBC o false si ocurre un error.

El conjunto de resultados contiene las siguientes columnas:

  • TABLE_CAT
  • TABLE_SCHEM
  • TABLE_NAME
  • NON_UNIQUE
  • INDEX_QUALIFIER
  • INDEX_NAME
  • TYPE
  • ORDINAL_POSITION
  • COLUMN_NAME
  • ASC_OR_DESC
  • CARDINALITY
  • PAGES
  • FILTER_CONDITION
Los controladores pueden indicar columnas adicionales.

El conjunto de resultados está ordenado por NON_UNIQUE, TYPE, INDEX_QUALIFIER, INDEX_NAME y ORDINAL_POSITION.

Historial de cambios

Versión Descripción
8.4.0 odbc ahora espera una instancia de Odbc\Connection; anteriormente, se esperaba un resource.
8.4.0 Esta función ahora devuelve una instancia de Odbc\Result; anteriormente, se devolvía un resource.

Ejemplos

Ejemplo #1 Lista las estadísticas de una tabla

<?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;
// filas adicionales omitidas por brevedad
}
?>

Resultado del ejemplo anterior es similar a :

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] =>
)

Ver también

add a note

User Contributed Notes 1 note

up
2
eion at bigfoot dot com
14 years ago
A couple of the function parameters are undefined:

unique - determines whether you want to return just unique indexes or all indexes. Use SQL_INDEX_UNIQUE or SQL_INDEX_ALL for this parameter

accuracy - whether you wan to return everything there is to know about the table or just what information is readily available. Use SQL_ENSURE or SQL_QUICK for this parameter

For a bit more info about this function see the ODBC function SQLStatistics() at http://msdn.microsoft.com/en-us/library/ms711022(v=vs.85).aspx
To Top