* Fixed the potential error reported by Prefast code analysis * Use SQLSRV_ASSERT for checking NULL ptrs * For these AKV tests check env despite not AE connected * Added the driver option to run functional tests * Fixed connection pooling tests for more than one ODBC drivers * added driver option to pdo isPooled.php * Removed win32 ifdefs re connection resiliency (#802) * Set the driver argument for getDSN to null by default (#798) * Added the driver argument to getDSN * Dropped the driver argument but set to null as default * Removed the AE condition in locale support * Modified the AE condition for locale support * Changed int to SQLLEN to avoid infinite loop (#806) * Version 5.3.0 (#803) * Version 5.3.0 * Fixed the wrong replacements * Added comments block to m4 files * Use dnl for comments * Modified AE fetch phptypes test to insert only one row at a time and loop through php types (#801) * Modified AE fetch phptypes test to insert only one row at a time and loop through php types * Fixed formatting * Streamlined two very similar large column name tests (#807) * Streamlined two very similar large column name tests * Changed the EOL * Updates to change log and readme (#811) * Updates to change log and readme * Dropped support for Ubuntu 17 * Modified as per review comments * Fixed connection resiliency tests for Unix, updated AppVeyor for ODBC 17.2 * Fixed expected output * Fixed output and skipifs * Fixed skipifs and output * Fixed driver name * Updated installation instructions and sample script (#813) * Updated instructions and sample test for 5.3.0 RTW * Fixed sample code to adhere to php coding standard * Fixed cases and spaces * Modified NOTE for UB 18.04 based on review comments * Added 'exit' * Modified change log and readme based on review to PR 811 * Applied review comments * build output to debug appveyor failure * removed debug output * Streamlined two very similar large column name tests (#815) * Streamlined two very similar large column name tests * Added random number of test table names to avoid operand clash issues * Replaced to with for based on review * Changelog updated * changelog updated, test skipif changed to run on unix platforms * Fixed skipif typo * Fixed typo in skipif for pdo * Fixed some output for Travis * Moved error checking inside pdo connres tests * Added links back to changelog * Fixed output for sqlsrv connres tests * Fixed output * Fixed output again
62 lines
1.6 KiB
PHP
62 lines
1.6 KiB
PHP
--TEST--
|
|
Retrieve error information; supplied values does not match table definition
|
|
--SKIPIF--
|
|
<?php require('skipif_mid-refactor.inc'); ?>
|
|
--FILE--
|
|
<?php
|
|
require_once("MsCommon_mid-refactor.inc");
|
|
|
|
try {
|
|
// Connect
|
|
$conn = connect();
|
|
|
|
// Create table
|
|
$tableName = 'pdo_040test';
|
|
dropTable($conn, $tableName);
|
|
|
|
// common function insertRow() is not used here since the test deliberately
|
|
// executes an invalid insertion statement
|
|
// thus it's not necessary to create an encrypted column for testing column encryption
|
|
$sql = "CREATE TABLE $tableName (code INT)";
|
|
$stmt = $conn->exec($sql);
|
|
|
|
// Insert data using bind parameters
|
|
// Number of supplied values does not match table definition
|
|
$sql = "INSERT INTO $tableName VALUES (?,?)";
|
|
$stmt = $conn->prepare($sql);
|
|
$params = array(2010, "London");
|
|
|
|
// SQL statement has an error, which is then reported
|
|
if ($stmt) {
|
|
$stmt->execute($params);
|
|
}
|
|
} catch (PDOException $e) {
|
|
$error = $e->errorInfo;
|
|
$success = false;
|
|
if (!isAEConnected()) {
|
|
// 21S01 is the expected ODBC Column name or number of supplied values does not match table definition error
|
|
if ($error[0] === "21S01") {
|
|
$success = true;
|
|
}
|
|
} else {
|
|
// 07009 is the expected ODBC Invalid Descriptor Index error
|
|
if ($error[0] === "07009") {
|
|
$success = true;
|
|
}
|
|
}
|
|
if ($success) {
|
|
print "Done";
|
|
} else {
|
|
var_dump($error);
|
|
}
|
|
} finally {
|
|
// Clean up and close connection
|
|
dropTable($conn, $tableName);
|
|
unset($stmt);
|
|
unset($conn);
|
|
}
|
|
?>
|
|
|
|
--EXPECT--
|
|
Done
|