PHP 8.4.2 Released!

odbc_statistics

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

odbc_statisticsCalcul des statistiques sur une table

Description

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

Calcul des statistiques sur une table.

Liste de paramètres

odbc

L'objet de connexion ODBC, voir la documentation de la fonction odbc_connect() pour plus de détails.

catalog

Le catalogue ('calificatif' dans le jargon ODBC 2).

schema

Le schéma ('propriétaire' dans le jargon ODBC 2).

table

Le nom de la table.

unique

Le type de l'index. Un de SQL_INDEX_UNIQUE ou SQL_INDEX_ALL.

accuracy

Un de SQL_ENSURE ou SQL_QUICK. Ce dernier demande au pilote de récupérer la CARDINALITY et PAGES seulement s'ils sont immédiatement disponible depuis le serveur.

Valeurs de retour

Renvoie un objet de résultat ODBC ou false si une erreur survient.

Le jeu de résultat contient les colonnes suivantes :

  • TABLE_CAT
  • TABLE_SCHEM
  • TABLE_NAME
  • NON_UNIQUE
  • INDEX_QUALIFIER
  • INDEX_NAME
  • TYPE
  • ORDINAL_POSITION
  • COLUMN_NAME
  • ASC_OR_DESC
  • CARDINALITY
  • PAGES
  • FILTER_CONDITION
Les pilotes peuvent signaler des colonnes supplémentaires.

Le jeu de résultat est ordonné par NON_UNIQUE, TYPE, INDEX_QUALIFIER, INDEX_NAME et ORDINAL_POSITION.

Historique

Version Description
8.4.0 odbc attend désormais une instance de Odbc\Connection; auparavant, un resource était attendu.
8.4.0 Cette fonction retourne désormais une instance de Odbc\Result; auparavant, un resource était retourné.

Exemples

Exemple #1 Liste les Statistiques d'une Table

<?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;
// further rows omitted for brevity
}
?>

Résultat de l'exemple ci-dessus est similaire à :

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

Voir aussi

add a note

User Contributed Notes 1 note

up
2
eion at bigfoot dot com
13 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