1--TEST-- 2PDO_Firebird: prepare/execute/binding 3--SKIPIF-- 4<?php require('skipif.inc'); ?> 5--ENV-- 6LSAN_OPTIONS=detect_leaks=0 7--FILE-- 8<?php 9 require("testdb.inc"); 10 11 var_dump($dbh->getAttribute(PDO::ATTR_CONNECTION_STATUS)); 12 13 $dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_WARNING); 14 $dbh->setAttribute(PDO::FB_ATTR_TIMESTAMP_FORMAT, '%Y-%m-%d %H:%M:%S'); 15 16 @$dbh->exec('DROP TABLE ddl'); 17 $dbh->exec("CREATE TABLE ddl (id SMALLINT NOT NULL PRIMARY KEY, text VARCHAR(32), 18 datetime TIMESTAMP DEFAULT '2000-02-12' NOT NULL)"); 19 $dbh->exec("INSERT INTO ddl (id,text) VALUES (1,'bla')"); 20 21 $s = $dbh->prepare("SELECT * FROM ddl WHERE id=? FOR UPDATE"); 22 23 $id = 0; 24 $s->bindParam(1,$id); 25 $var = null; 26 $s->bindColumn("TEXT",$var); 27 $id = 1; 28 $s->execute(); 29 $s->setAttribute(PDO::ATTR_CURSOR_NAME, "c"); 30 31 var_dump($id); 32 33 var_dump($s->fetch()); 34 35 var_dump($var); 36 37 var_dump($dbh->exec("UPDATE ddl SET id=2 WHERE CURRENT OF c")); 38 39 var_dump($s->fetch()); 40 41 unset($s); 42 unset($dbh); 43 echo "done\n"; 44 45?> 46--EXPECT-- 47bool(true) 48int(1) 49array(6) { 50 ["ID"]=> 51 int(1) 52 [0]=> 53 int(1) 54 ["TEXT"]=> 55 string(3) "bla" 56 [1]=> 57 string(3) "bla" 58 ["DATETIME"]=> 59 string(19) "2000-02-12 00:00:00" 60 [2]=> 61 string(19) "2000-02-12 00:00:00" 62} 63string(3) "bla" 64int(1) 65bool(false) 66done 67