以下の例のストアドプロシージャ match_animal は、
     3 つのさまざまなパラメータを受け取ります。
     
      - 
       
        最初の動物の名前を入力として受け取る
        入力 (IN) パラメータ。
        
- 
       
        2 番目の動物の名前を入力として受け取り、その名前に一致する動物が
        データベースに存在する場合に文字列 TRUEを返す、入出力 (INOUT) パラメータ。
 
- 
       
        指定した 2 匹の動物の合計体重を返す、出力 (OUT) パラメータ。
        
     さらにこのストアドプロシージャは結果セットを返します。その内容は、
     最初のパラメータで指定した動物から 2 番目のパラメータで指定した動物までの
     動物の一覧をアルファベット順に並べたものとなります。
    
<?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 "コール前のバインド変数の値:\n";
print "  1: {$name} 2: {$second_name} 3: {$weight}\n\n";
if (db2_execute($stmt)) {
    print "コール後のバインド変数の値:\n";
    print "  1: {$name} 2: {$second_name} 3: {$weight}\n\n";
    print "結果:\n";
    while ($row = db2_fetch_array($stmt)) {
        print "  {$row[0]}, {$row[1]}, {$row[2]}\n";
    }
}
?>
     
    
コール前のバインド変数の値:
  1: Peaches 2: Rickety Ride 3: 0
コール後のバインド変数の値:
  1: Peaches 2: TRUE 3: 22
結果:
  Peaches, dog, 12.3
  Pook, cat, 3.2
  Rickety Ride, goat, 9.7