db2_fetch_object
db2_field_display_size
Fonctions IBM DB2
PHP Manual

# db2_fetch_row

(PECL ibm_db2 >= 1.0.0)

db2_fetch_row — Modifie le pointeur du jeu de résultat à la prochaine ligne ou à la ligne demandée

### Description

bool db2_fetch_row ( resource `$stmt` [, int `$row_number` ] )

Utilisez db2_fetch_row() pour itérer à travers un jeu de résultats ou pour pointer à une ligne spécifique d'un jeu de résultats si vous avez demandé un curseur flottant.

Pour obtenir des champs individuels du jeu de résultats, appelez la fonction db2_result().

Au lieu d'appeler les fonctions db2_fetch_row() et db2_result(), la plupart des applications vont appeler la fonction db2_fetch_assoc(), db2_fetch_both() ou db2_fetch_array() pour avancer le pointeur dans le jeu de résultats et retourner une ligne complète en tant que tableau.

### Liste de paramètres

`stmt`

  Une ressource stmt valide contenant le jeu de résultats.

`row_number`

  Avec des curseurs flottants, vous pouvez demander un numéro de ligne spécifique du jeu de résultats. Les numéros des lignes commencent par l'indice 1

### Valeurs de retour

Retourne `TRUE` si la ligne demandée existe dans le jeu de résultats. Retourne `FALSE` si la ligne demandée n'existe pas dans le jeu de résultats.

### Exemples

Exemple #1 Itère à travers un jeu de résultats

L'exemple suivant démontre comment itérer à travers un jeu de résultats avec la fonction db2_fetch_row() et récupérer les colonnes du jeu de résultats avec db2_result().

`<?php
$sql = 'SELECT nom, race FROM animaux WHERE poids < ?';
$stmt = db2_prepare($conn, $sql);
db2_execute($stmt, array(10));
while (db2_fetch_row($stmt)) {
$nom = db2_result($stmt, 0);
$race = db2_result($stmt, 1);
print "$nom $race";
}
?>`

L'exemple ci-dessus va afficher :

    chat Pook
    cyprin doré Bubbles
    perruche Gizmo
    chèvre Rickety Ride

Exemple #2 Alternatives recommandées i5/OS pour db2_fetch_row/db2_result

Sur i5/OS, il est recommandé que vous utilisiez db2_fetch_both(), db2_fetch_array() ou db2_fetch_object() au lieu de db2_fetch_row()/db2_result(). En général db2_fetch_row()/db2_result() a plus de problèmes avec des types de colonne variés dans la traduction de EBCIDIC à ASCII, en incluant de possible troncature dans les applications DBCS. Vous pourriez aussi trouver une performance d'utiliser db2_fetch_both(), db2_fetch_array() et db2_fetch_object() à utiliser db2_fetch_row()/db2_result().

`<?php
$conn = db2_connect("","","");
$sql = 'SELECT SPECIFIC_SCHEMA, SPECIFIC_NAME, ROUTINE_SCHEMA, ROUTINE_NAME, ROUTINE_TYPE, ROUTINE_CREATED, ROUTINE_BODY, IN_PARMS, OUT_PARMS, INOUT_PARMS, PARAMETER_STYLE, EXTERNAL_NAME, EXTERNAL_LANGUAGE FROM QSYS2.SYSROUTINES FETCH FIRST 2 ROWS ONLY';
$stmt = db2_exec($conn, $sql, array('cursor' => DB2_SCROLLABLE));
while ($row = db2_fetch_both($stmt)){
echo "<br>db2_fetch_both {$row['SPECIFIC_NAME']} {$row['ROUTINE_CREATED']} {$row[5]}";
}
$stmt = db2_exec($conn, $sql, array('cursor' => DB2_SCROLLABLE));
while ($row = db2_fetch_array($stmt)){
echo "<br>db2_fetch_array {$row[1]} {$row[5]}";
}
$stmt = db2_exec($conn, $sql, array('cursor' => DB2_SCROLLABLE));
while ($row = db2_fetch_object($stmt)){
echo "<br>db2_fetch_object {$row->SPECIFIC_NAME} {$row->ROUTINE_CREATED}";
}
db2_close($conn);
?>`

L'exemple ci-dessus va afficher :

    db2_fetch_both MATCH_ANIMAL 2006-08-25-17.10.23.775000 2006-08-25-17.10.23.775000
    db2_fetch_both MULTIRESULTS 2006-10-17-10.11.05.308000 2006-10-17-10.11.05.308000
    db2_fetch_array MATCH_ANIMAL 2006-08-25-17.10.23.775000
    db2_fetch_array MULTIRESULTS 2006-10-17-10.11.05.308000
    db2_fetch_object MATCH_ANIMAL 2006-08-25-17.10.23.775000
    db2_fetch_object MULTIRESULTS 2006-10-17-10.11.05.308000

### Voir aussi

- db2_fetch_array() - Retourne un tableau, indexé par la position des colonnes, représentant une ligne du jeu de résultats
- db2_fetch_assoc() - Retourne un tableau, indexé par nom de colonne, représentant une ligne du jeu de résultats
- db2_fetch_both() - Retourne un tableau, indexé par nom de colonne et position, représentant une ligne du jeu de résultats
- db2_fetch_object() - Retourne un objet avec les propriétés représentant des colonnes dans la ligne extraite
- db2_result() - Retourne une colonne d'une ligne d'un jeu de résultats

db2_fetch_object
db2_field_display_size
Fonctions IBM DB2
PHP Manual