Valeur retournée
array - un tableau associatif d'informations sur la table ou un
objet DB_Error en cas d'échec
Le contenu du tableau dépend du paramètre $mode.
Les noms des tables et des colonnes doivent être en minuscule si
le mode de portabilité
DB_PORTABILITY_LOWERCASE est actif.
L'élément flags contient une liste séparée par
un espace d'informations additionnelles sur la colonne. Si le DBMS est capable
de reporter la valeur par défaut de la colonne, la valeur est passée
via la fonction rawurlencode() pour éviter
les problèmes causés par d'éventuel espace dans la valeur.
La plupart des DBMS fournit uniquement les éléments
table et flags si
$result est un nom de table.
Uniquement fbsql et mysql fournissent la totalité des informations
depuis les requêtes.
L'élément type contient le type retourné par
le DBMS. Il varie suivant les DBMS.
Modes tableInfo
Cette section décrit le format du tableau retourné et comment il varie
dépendamment du $mode utilisé lors de
l'appel de la fonction.
Le résultat simple ci-dessous est basé sur cette requête :
SELECT tblFoo.fldID, tblFoo.fldPhone, tblBar.fldId
FROM tblFoo
JOIN tblBar ON tblFoo.fldId = tblBar.fldId; |
- NULL ou 0
[0] => Array (
[table] => tblFoo
[name] => fldId
[type] => int
[len] => 11
[flags] => primary_key not_null
)
[1] => Array (
[table] => tblFoo
[name] => fldPhone
[type] => string
[len] => 20
[flags] =>
)
[2] => Array (
[table] => tblBar
[name] => fldId
[type] => int
[len] => 11
[flags] => primary_key not_null
) |
- DB_TABLEINFO_ORDER
En plus des informations trouvées dans la sortie par défaut,
une note sur le nombre de colonnes est fourni par
l'élément num_fields tandis que l'élément
order fournit un tableau dont les noms
des colonnes sont les clés et leurs numéros d'index (correspondant
aux clés dans le résultat par défaut) sont les valeurs.
Si un jeu de résultats a des noms de champs identiques, le
dernier sera utilisé.
[num_fields] => 3
[order] => Array (
[fldId] => 2
[fldTrans] => 1
) |
- DB_TABLEINFO_ORDERTABLE
Similaire à DB_TABLEINFO_ORDER mais ajoute
plus de dimensions au tableau dont les noms des tables sont les clés
et les noms des champs, les sous-clés. Ceci est utile pour les requêtes
qui utilisent les jointures qui ont des noms de champs identiques.
[num_fields] => 3
[ordertable] => Array (
[tblFoo] => Array (
[fldId] => 0
[fldPhone] => 1
)
[tblBar] => Array (
[fldId] => 2
)
) |
- DB_TABLEINFO_FULL
Contient les informations de
DB_TABLEINFO_ORDER et de
DB_TABLEINFO_ORDERTABLE.
Les constantes de modes tableInfo peuvent être cumulées en utilisant
le signe pipe (|).
Note
Cette fonction ne peut pas être appelée de façon statique.
tableInfo() n'est pas portable
car tous les drivers ne supportent pas cette méthode.
La plupart des DBMS est incapable de déterminer les noms
des tables depuis les résultats des requêtes et les données méta
retournées par chaque système de base de données varient énormément.