O procedimento armazenado match_animal no exemplo a seguir aceita
     três parâmetros diferentes:
     
      - 
       
        um parâmetro de entrada (IN) que aceita o nome do primeiro animal como
        entrada
        
- 
       
        um parâmetro de entrada-saída (INOUT) que aceita o nome do segundo
        animal como entrada e retorna a string TRUEse um
        animal no banco de dados corresponder a ele
 
- 
       
        um parâmetro de saída (OUT) que retorna a soma do peso dos
        dois animais identificados
        
     Além disso, o procedimento armazenado retorna um conjunto de resultados consistindo de
     animais listados em ordem alfabética começando no animal correspondente
     ao valor de entrada do primeiro parâmetro e terminando no animal
     correspondente ao valor de entrada do segundo parâmetro.
    
<?php
$sql = 'CALL match_animal(?, ?, ?)';
$conn = db2_connect($database, $user, $password);
$stmt = db2_prepare($conn, $sql);
$name = "Peaches";
$second_name = "Rickety Ride";
$weight = 0;
db2_bind_param($stmt, 1, "name", DB2_PARAM_IN);
db2_bind_param($stmt, 2, "second_name", DB2_PARAM_INOUT);
db2_bind_param($stmt, 3, "weight", DB2_PARAM_OUT);
print "Valores dos parâmetros vinculados _antes_ de CALL:\n";
print "  1: {$name} 2: {$second_name} 3: {$weight}\n\n";
if (db2_execute($stmt)) {
    print "Valores dos parâmetros vinculados _after_ CALL:\n";
    print "  1: {$name} 2: {$second_name} 3: {$weight}\n\n";
    print "Resultados:\n";
    while ($row = db2_fetch_array($stmt)) {
        print "  {$row[0]}, {$row[1]}, {$row[2]}\n";
    }
}
?>
     
    O exemplo acima produzirá:
Valores dos parâmetros vinculados _antes_ de CALL:
  1: Peaches 2: Rickety Ride 3: 0
Valores dos parâmetros vinculados _depois_ de CALL:
  1: Peaches 2: TRUE 3: 22
Resultados:
  Peaches, dog, 12.3
  Pook, cat, 3.2
  Rickety Ride, goat, 9.7