xref: /PHP-7.4/ext/pdo_firebird/tests/execute.phpt (revision f6c15e2c)
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