Annotation of embedaddon/php/ext/pdo/tests/pdo_021.phpt, revision 1.1
1.1 ! misho 1: --TEST--
! 2: PDO Common: PDOStatement::execute with parameters
! 3: --SKIPIF--
! 4: <?php # vim:ft=php
! 5: if (!extension_loaded('pdo')) die('skip');
! 6: $dir = getenv('REDIR_TEST_DIR');
! 7: if (false == $dir) die('skip no driver');
! 8: require_once $dir . 'pdo_test.inc';
! 9: PDOTest::skip();
! 10: ?>
! 11: --FILE--
! 12: <?php
! 13: if (getenv('REDIR_TEST_DIR') === false) putenv('REDIR_TEST_DIR='.dirname(__FILE__) . '/../../pdo/tests/');
! 14: require_once getenv('REDIR_TEST_DIR') . 'pdo_test.inc';
! 15: $db = PDOTest::factory();
! 16:
! 17: if ($db->getAttribute(PDO::ATTR_DRIVER_NAME) == 'mysql') {
! 18: $db->setAttribute(PDO::MYSQL_ATTR_USE_BUFFERED_QUERY, true);
! 19: }
! 20:
! 21: $db->exec('CREATE TABLE test(id INT NOT NULL PRIMARY KEY, val VARCHAR(10), val2 VARCHAR(16))');
! 22:
! 23: $select = $db->prepare('SELECT COUNT(id) FROM test');
! 24:
! 25: $data = array(
! 26: array('10', 'Abc', 'zxy'),
! 27: array('20', 'Def', 'wvu'),
! 28: array('30', 'Ghi', 'tsr'),
! 29: array('40', 'Jkl', 'qpo'),
! 30: array('50', 'Mno', 'nml'),
! 31: array('60', 'Pqr', 'kji'),
! 32: );
! 33:
! 34:
! 35: // Insert using question mark placeholders
! 36: $stmt = $db->prepare("INSERT INTO test VALUES(?, ?, ?)");
! 37: foreach ($data as $row) {
! 38: $stmt->execute($row);
! 39: }
! 40: $select->execute();
! 41: $num = $select->fetchColumn();
! 42: echo 'There are ' . $num . " rows in the table.\n";
! 43:
! 44: // Insert using named parameters
! 45: $stmt2 = $db->prepare("INSERT INTO test VALUES(:first, :second, :third)");
! 46: foreach ($data as $row) {
! 47: $stmt2->execute(array(':first'=>($row[0] + 5), ':second'=>$row[1],
! 48: ':third'=>$row[2]));
! 49: }
! 50:
! 51: $select->execute();
! 52: $num = $select->fetchColumn();
! 53: echo 'There are ' . $num . " rows in the table.\n";
! 54:
! 55:
! 56: ?>
! 57: --EXPECT--
! 58: There are 6 rows in the table.
! 59: There are 12 rows in the table.
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>