felipe          Wed Feb 11 10:44:48 2009 UTC

  Modified files:              (Branch: PHP_5_2)
    /php-src/ext/pdo_pgsql/tests        large_objects.phpt 
  Log:
  MFH: Fixed test bug #47311 (PDO::PARAM_LOB columns need to be bound before 
execute() on PgSQL)
  
http://cvs.php.net/viewvc.cgi/php-src/ext/pdo_pgsql/tests/large_objects.phpt?r1=1.1.2.1&r2=1.1.2.1.2.1&diff_format=u
Index: php-src/ext/pdo_pgsql/tests/large_objects.phpt
diff -u php-src/ext/pdo_pgsql/tests/large_objects.phpt:1.1.2.1 
php-src/ext/pdo_pgsql/tests/large_objects.phpt:1.1.2.1.2.1
--- php-src/ext/pdo_pgsql/tests/large_objects.phpt:1.1.2.1      Tue Nov 29 
02:11:39 2005
+++ php-src/ext/pdo_pgsql/tests/large_objects.phpt      Wed Feb 11 10:44:48 2009
@@ -19,7 +19,7 @@
 $db->beginTransaction();
 $oid = $db->pgsqlLOBCreate();
 try {
-$stm = $db->pgsqlLOBOpen($oid);
+$stm = $db->pgsqlLOBOpen($oid, 'w+b');
 fwrite($stm, "Hello dude\n");
 
 $stmt = $db->prepare("INSERT INTO test (blobid, bloboid) values (?, ?)");
@@ -34,14 +34,37 @@
 
 /* Pull it out */
 $stmt = $db->prepare("SELECT * from test");
-$stmt->execute();
 $stmt->bindColumn('bloboid', $lob, PDO::PARAM_LOB);
+$stmt->execute();
 echo "Fetching:\n";
 while (($row = $stmt->fetch(PDO::FETCH_ASSOC))) {
        var_dump($row['blobid']);
        var_dump(stream_get_contents($lob));
 }
 echo "Fetched!\n";
+
+/* Try again, with late bind */
+$stmt = $db->prepare("SELECT * from test");
+$stmt->execute();
+$stmt->bindColumn('bloboid', $lob, PDO::PARAM_LOB);
+echo "Fetching late bind:\n";
+while (($row = $stmt->fetch(PDO::FETCH_ASSOC))) {
+       var_dump($row['blobid']);
+       var_dump(is_int($row['bloboid']));
+}
+echo "Fetched!\n";
+
+/* Try again, with NO  bind */
+$stmt = $db->prepare("SELECT * from test");
+$stmt->execute();
+$stmt->bindColumn('bloboid', $lob, PDO::PARAM_LOB);
+echo "Fetching NO bind:\n";
+while (($row = $stmt->fetch(PDO::FETCH_ASSOC))) {
+       var_dump($row['blobid']);
+       var_dump(is_int($row['bloboid']));
+}
+echo "Fetched!\n";
+
 } catch (Exception $e) {
        /* catch exceptions so that we can guarantee to clean
         * up the LOB */
@@ -53,9 +76,18 @@
  * linger and clutter up the storage */
 $db->pgsqlLOBUnlink($oid);
 
+?>
 --EXPECT--
 Fetching:
 int(1)
 string(11) "Hello dude
 "
 Fetched!
+Fetching late bind:
+int(1)
+bool(true)
+Fetched!
+Fetching NO bind:
+int(1)
+bool(true)
+Fetched!



-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to