1--TEST--
2PDO MySQL PECL bug #1295 (http://pecl.php.net/bugs/bug.php?id=12925)
3--EXTENSIONS--
4pdo_mysql
5--SKIPIF--
6<?php
7require_once __DIR__ . '/inc/mysql_pdo_test.inc';
8MySQLPDOTest::skip();
9?>
10--FILE--
11<?php
12require_once __DIR__ . '/inc/mysql_pdo_test.inc';
13$db = MySQLPDOTest::factory();
14
15function bug_pecl_1295($db) {
16    $db->exec('DROP TABLE IF EXISTS test_12925');
17    $db->exec('CREATE TABLE test_12925(id CHAR(1))');
18    $db->exec("INSERT INTO test_12925(id) VALUES ('a')");
19    $stmt = $db->prepare("UPDATE test_12925 SET id = 'b'");
20    $stmt->execute();
21    $stmt = $db->prepare("UPDATE test_12925 SET id = 'c'");
22    $stmt->execute();
23    $stmt = $db->prepare('SELECT id FROM test_12925');
24    $stmt->execute();
25    var_dump($stmt->fetchAll(PDO::FETCH_ASSOC));
26    $stmt->closeCursor();
27}
28
29printf("Emulated...\n");
30$db = MySQLPDOTest::factory();
31$db->setAttribute(PDO::ATTR_EMULATE_PREPARES, 1);
32bug_pecl_1295($db);
33
34printf("Native...\n");
35$db = MySQLPDOTest::factory();
36$db->setAttribute(PDO::ATTR_EMULATE_PREPARES, 0);
37bug_pecl_1295($db);
38
39print "done!";
40?>
41--CLEAN--
42<?php
43require_once __DIR__ . '/inc/mysql_pdo_test.inc';
44$db = MySQLPDOTest::factory();
45$db->exec('DROP TABLE IF EXISTS test_12925');
46?>
47--EXPECT--
48Emulated...
49array(1) {
50  [0]=>
51  array(1) {
52    ["id"]=>
53    string(1) "c"
54  }
55}
56Native...
57array(1) {
58  [0]=>
59  array(1) {
60    ["id"]=>
61    string(1) "c"
62  }
63}
64done!
65