Index: Db.php =================================================================== --- Db.php (revision 21011) +++ Db.php (working copy) @@ -58,11 +58,12 @@ const AUTO_RECONNECT_ON_UNSERIALIZE = 'autoReconnectOnUnserialize'; /** - * Use the INT_TYPE, BIGINT_TYPE, and FLOAT_TYPE with the quote() method. + * Use the INT_TYPE, BIGINT_TYPE, FLOAT_TYPE and UNSIGNED_TYPE with the quote() method. */ - const INT_TYPE = 0; - const BIGINT_TYPE = 1; - const FLOAT_TYPE = 2; + const INT_TYPE = 0; + const BIGINT_TYPE = 1; + const FLOAT_TYPE = 2; + const UNSIGNED_TYPE = 3; /** * PDO constant values discovered by this script result: Index: Db/Adapter/Abstract.php =================================================================== --- Db/Adapter/Abstract.php (revision 21011) +++ Db/Adapter/Abstract.php (working copy) @@ -110,19 +110,21 @@ /** * Keys are UPPERCASE SQL datatypes or the constants - * Zend_Db::INT_TYPE, Zend_Db::BIGINT_TYPE, or Zend_Db::FLOAT_TYPE. + * Zend_Db::INT_TYPE, Zend_Db::BIGINT_TYPE, Zend_Db::FLOAT_TYPE or Zend_Db::UNSIGNED_TYPE. * * Values are: * 0 = 32-bit integer * 1 = 64-bit integer * 2 = float or decimal - * - * @var array Associative array of datatypes to values 0, 1, or 2. + * 3 = unsigned integer + * + * @var array Associative array of datatypes to values 0, 1, 2 or 3. */ protected $_numericDataTypes = array( - Zend_Db::INT_TYPE => Zend_Db::INT_TYPE, - Zend_Db::BIGINT_TYPE => Zend_Db::BIGINT_TYPE, - Zend_Db::FLOAT_TYPE => Zend_Db::FLOAT_TYPE + Zend_Db::INT_TYPE => Zend_Db::INT_TYPE, + Zend_Db::BIGINT_TYPE => Zend_Db::BIGINT_TYPE, + Zend_Db::FLOAT_TYPE => Zend_Db::FLOAT_TYPE, + Zend_Db::UNSIGNED_TYPE => Zend_Db::UNSIGNED_TYPE ); /** Weither or not that object can get serialized @@ -870,6 +872,10 @@ break; case Zend_Db::FLOAT_TYPE: // float or decimal $quotedValue = sprintf('%F', $value); + break; + case Zend_Db::UNSIGNED_TYPE: // Unsigned integer + $quotedValue = sprintf('%u', $value); + break; } return $quotedValue; } Index: Db/Adapter/Mysqli.php =================================================================== --- Db/Adapter/Mysqli.php (revision 21011) +++ Db/Adapter/Mysqli.php (working copy) @@ -54,32 +54,39 @@ /** * Keys are UPPERCASE SQL datatypes or the constants - * Zend_Db::INT_TYPE, Zend_Db::BIGINT_TYPE, or Zend_Db::FLOAT_TYPE. + * Zend_Db::INT_TYPE, Zend_Db::BIGINT_TYPE, Zend_Db::FLOAT_TYPE or Zend_Db::UNSIGNED_TYPE. * * Values are: * 0 = 32-bit integer * 1 = 64-bit integer * 2 = float or decimal - * - * @var array Associative array of datatypes to values 0, 1, or 2. + * 3 = unsigned integer + * + * @var array Associative array of datatypes to values 0, 1, 2 or 3. */ protected $_numericDataTypes = array( - Zend_Db::INT_TYPE => Zend_Db::INT_TYPE, - Zend_Db::BIGINT_TYPE => Zend_Db::BIGINT_TYPE, - Zend_Db::FLOAT_TYPE => Zend_Db::FLOAT_TYPE, - 'INT' => Zend_Db::INT_TYPE, - 'INTEGER' => Zend_Db::INT_TYPE, - 'MEDIUMINT' => Zend_Db::INT_TYPE, - 'SMALLINT' => Zend_Db::INT_TYPE, - 'TINYINT' => Zend_Db::INT_TYPE, - 'BIGINT' => Zend_Db::BIGINT_TYPE, - 'SERIAL' => Zend_Db::BIGINT_TYPE, - 'DEC' => Zend_Db::FLOAT_TYPE, - 'DECIMAL' => Zend_Db::FLOAT_TYPE, - 'DOUBLE' => Zend_Db::FLOAT_TYPE, - 'DOUBLE PRECISION' => Zend_Db::FLOAT_TYPE, - 'FIXED' => Zend_Db::FLOAT_TYPE, - 'FLOAT' => Zend_Db::FLOAT_TYPE + Zend_Db::INT_TYPE => Zend_Db::INT_TYPE, + Zend_Db::BIGINT_TYPE => Zend_Db::BIGINT_TYPE, + Zend_Db::FLOAT_TYPE => Zend_Db::FLOAT_TYPE, + Zend_Db::UNSIGNED_TYPE => Zend_Db::UNSIGNED_TYPE, + 'INT' => Zend_Db::INT_TYPE, + 'INTEGER' => Zend_Db::INT_TYPE, + 'MEDIUMINT' => Zend_Db::INT_TYPE, + 'SMALLINT' => Zend_Db::INT_TYPE, + 'TINYINT' => Zend_Db::INT_TYPE, + 'BIGINT' => Zend_Db::BIGINT_TYPE, + 'SERIAL' => Zend_Db::BIGINT_TYPE, + 'DEC' => Zend_Db::FLOAT_TYPE, + 'DECIMAL' => Zend_Db::FLOAT_TYPE, + 'DOUBLE' => Zend_Db::FLOAT_TYPE, + 'DOUBLE PRECISION' => Zend_Db::FLOAT_TYPE, + 'FIXED' => Zend_Db::FLOAT_TYPE, + 'FLOAT' => Zend_Db::FLOAT_TYPE, + 'UNSIGNEDINT' => Zend_Db::UNSIGNED_TYPE, + 'UNSIGNEDINTEGER' => Zend_Db::UNSIGNED_TYPE, + 'UNSIGNEDMEDIUMINT' => Zend_Db::UNSIGNED_TYPE, + 'UNSIGNEDSMALLINT' => Zend_Db::UNSIGNED_TYPE, + 'UNSIGNEDTINYINT' => Zend_Db::UNSIGNED_TYPE ); /** Index: Db/Adapter/Oracle.php =================================================================== --- Db/Adapter/Oracle.php (revision 21011) +++ Db/Adapter/Oracle.php (working copy) @@ -60,22 +60,24 @@ /** * Keys are UPPERCASE SQL datatypes or the constants - * Zend_Db::INT_TYPE, Zend_Db::BIGINT_TYPE, or Zend_Db::FLOAT_TYPE. + * Zend_Db::INT_TYPE, Zend_Db::BIGINT_TYPE, Zend_Db::FLOAT_TYPE or Zend_Db::UNSIGNED_TYPE. * * Values are: * 0 = 32-bit integer * 1 = 64-bit integer * 2 = float or decimal + * 3 = unsigned integer * - * @var array Associative array of datatypes to values 0, 1, or 2. + * @var array Associative array of datatypes to values 0, 1, 2 or 3. */ protected $_numericDataTypes = array( - Zend_Db::INT_TYPE => Zend_Db::INT_TYPE, - Zend_Db::BIGINT_TYPE => Zend_Db::BIGINT_TYPE, - Zend_Db::FLOAT_TYPE => Zend_Db::FLOAT_TYPE, - 'BINARY_DOUBLE' => Zend_Db::FLOAT_TYPE, - 'BINARY_FLOAT' => Zend_Db::FLOAT_TYPE, - 'NUMBER' => Zend_Db::FLOAT_TYPE, + Zend_Db::INT_TYPE => Zend_Db::INT_TYPE, + Zend_Db::BIGINT_TYPE => Zend_Db::BIGINT_TYPE, + Zend_Db::FLOAT_TYPE => Zend_Db::FLOAT_TYPE, + Zend_Db::UNSIGNED_TYPE => Zend_Db::UNSIGNED_TYPE, + 'BINARY_DOUBLE' => Zend_Db::FLOAT_TYPE, + 'BINARY_FLOAT' => Zend_Db::FLOAT_TYPE, + 'NUMBER' => Zend_Db::FLOAT_TYPE, ); /** Index: Db/Adapter/Pdo/Ibm.php =================================================================== --- Db/Adapter/Pdo/Ibm.php (revision 21011) +++ Db/Adapter/Pdo/Ibm.php (working copy) @@ -59,28 +59,32 @@ /** * Keys are UPPERCASE SQL datatypes or the constants - * Zend_Db::INT_TYPE, Zend_Db::BIGINT_TYPE, or Zend_Db::FLOAT_TYPE. + * Zend_Db::INT_TYPE, Zend_Db::BIGINT_TYPE, Zend_Db::FLOAT_TYPE or Zend_Db::UNSIGNED_TYPE. * * Values are: * 0 = 32-bit integer * 1 = 64-bit integer * 2 = float or decimal + * 3 = unsigned integer * - * @var array Associative array of datatypes to values 0, 1, or 2. + * @var array Associative array of datatypes to values 0, 1, 2 or 3. */ protected $_numericDataTypes = array( - Zend_Db::INT_TYPE => Zend_Db::INT_TYPE, - Zend_Db::BIGINT_TYPE => Zend_Db::BIGINT_TYPE, - Zend_Db::FLOAT_TYPE => Zend_Db::FLOAT_TYPE, - 'INTEGER' => Zend_Db::INT_TYPE, - 'SMALLINT' => Zend_Db::INT_TYPE, - 'BIGINT' => Zend_Db::BIGINT_TYPE, - 'DECIMAL' => Zend_Db::FLOAT_TYPE, - 'DEC' => Zend_Db::FLOAT_TYPE, - 'REAL' => Zend_Db::FLOAT_TYPE, - 'NUMERIC' => Zend_Db::FLOAT_TYPE, - 'DOUBLE PRECISION' => Zend_Db::FLOAT_TYPE, - 'FLOAT' => Zend_Db::FLOAT_TYPE + Zend_Db::INT_TYPE => Zend_Db::INT_TYPE, + Zend_Db::BIGINT_TYPE => Zend_Db::BIGINT_TYPE, + Zend_Db::FLOAT_TYPE => Zend_Db::FLOAT_TYPE, + Zend_Db::UNSIGNED_TYPE => Zend_Db::UNSIGNED_TYPE, + 'INTEGER' => Zend_Db::INT_TYPE, + 'SMALLINT' => Zend_Db::INT_TYPE, + 'BIGINT' => Zend_Db::BIGINT_TYPE, + 'DECIMAL' => Zend_Db::FLOAT_TYPE, + 'DEC' => Zend_Db::FLOAT_TYPE, + 'REAL' => Zend_Db::FLOAT_TYPE, + 'NUMERIC' => Zend_Db::FLOAT_TYPE, + 'DOUBLE PRECISION' => Zend_Db::FLOAT_TYPE, + 'FLOAT' => Zend_Db::FLOAT_TYPE, + 'UNSIGNEDINTEGER' => Zend_Db::UNSIGNED_TYPE, + 'UNSIGNEDSMALLINT' => Zend_Db::UNSIGNED_TYPE ); /** Index: Db/Adapter/Pdo/Mssql.php =================================================================== --- Db/Adapter/Pdo/Mssql.php (revision 21011) +++ Db/Adapter/Pdo/Mssql.php (working copy) @@ -47,29 +47,34 @@ /** * Keys are UPPERCASE SQL datatypes or the constants - * Zend_Db::INT_TYPE, Zend_Db::BIGINT_TYPE, or Zend_Db::FLOAT_TYPE. + * Zend_Db::INT_TYPE, Zend_Db::BIGINT_TYPE, Zend_Db::FLOAT_TYPE or Zend_Db::UNSIGNED_TYPE. * * Values are: * 0 = 32-bit integer * 1 = 64-bit integer * 2 = float or decimal + * 3 = unsigned integer * - * @var array Associative array of datatypes to values 0, 1, or 2. + * @var array Associative array of datatypes to values 0, 1, 2 or 3. */ protected $_numericDataTypes = array( - Zend_Db::INT_TYPE => Zend_Db::INT_TYPE, - Zend_Db::BIGINT_TYPE => Zend_Db::BIGINT_TYPE, - Zend_Db::FLOAT_TYPE => Zend_Db::FLOAT_TYPE, - 'INT' => Zend_Db::INT_TYPE, - 'SMALLINT' => Zend_Db::INT_TYPE, - 'TINYINT' => Zend_Db::INT_TYPE, - 'BIGINT' => Zend_Db::BIGINT_TYPE, - 'DECIMAL' => Zend_Db::FLOAT_TYPE, - 'FLOAT' => Zend_Db::FLOAT_TYPE, - 'MONEY' => Zend_Db::FLOAT_TYPE, - 'NUMERIC' => Zend_Db::FLOAT_TYPE, - 'REAL' => Zend_Db::FLOAT_TYPE, - 'SMALLMONEY' => Zend_Db::FLOAT_TYPE + Zend_Db::INT_TYPE => Zend_Db::INT_TYPE, + Zend_Db::BIGINT_TYPE => Zend_Db::BIGINT_TYPE, + Zend_Db::FLOAT_TYPE => Zend_Db::FLOAT_TYPE, + Zend_Db::UNSIGNED_TYPE => Zend_Db::UNSIGNED_TYPE, + 'INT' => Zend_Db::INT_TYPE, + 'SMALLINT' => Zend_Db::INT_TYPE, + 'TINYINT' => Zend_Db::INT_TYPE, + 'BIGINT' => Zend_Db::BIGINT_TYPE, + 'DECIMAL' => Zend_Db::FLOAT_TYPE, + 'FLOAT' => Zend_Db::FLOAT_TYPE, + 'MONEY' => Zend_Db::FLOAT_TYPE, + 'NUMERIC' => Zend_Db::FLOAT_TYPE, + 'REAL' => Zend_Db::FLOAT_TYPE, + 'SMALLMONEY' => Zend_Db::FLOAT_TYPE, + 'UNSIGNEDINT' => Zend_Db::UNSIGNED_TYPE, + 'UNSIGNEDSMALLINT' => Zend_Db::UNSIGNED_TYPE, + 'UNSIGNEDTINYINT' => Zend_Db::UNSIGNED_TYPE ); /** Index: Db/Adapter/Pdo/Mysql.php =================================================================== --- Db/Adapter/Pdo/Mysql.php (revision 21011) +++ Db/Adapter/Pdo/Mysql.php (working copy) @@ -48,32 +48,39 @@ /** * Keys are UPPERCASE SQL datatypes or the constants - * Zend_Db::INT_TYPE, Zend_Db::BIGINT_TYPE, or Zend_Db::FLOAT_TYPE. + * Zend_Db::INT_TYPE, Zend_Db::BIGINT_TYPE, Zend_Db::FLOAT_TYPE or Zend_Db::UNSIGNED_TYPE. * * Values are: * 0 = 32-bit integer * 1 = 64-bit integer * 2 = float or decimal + * 3 = unsigned integer * - * @var array Associative array of datatypes to values 0, 1, or 2. + * @var array Associative array of datatypes to values 0, 1, 2 or 3. */ protected $_numericDataTypes = array( - Zend_Db::INT_TYPE => Zend_Db::INT_TYPE, - Zend_Db::BIGINT_TYPE => Zend_Db::BIGINT_TYPE, - Zend_Db::FLOAT_TYPE => Zend_Db::FLOAT_TYPE, - 'INT' => Zend_Db::INT_TYPE, - 'INTEGER' => Zend_Db::INT_TYPE, - 'MEDIUMINT' => Zend_Db::INT_TYPE, - 'SMALLINT' => Zend_Db::INT_TYPE, - 'TINYINT' => Zend_Db::INT_TYPE, - 'BIGINT' => Zend_Db::BIGINT_TYPE, - 'SERIAL' => Zend_Db::BIGINT_TYPE, - 'DEC' => Zend_Db::FLOAT_TYPE, - 'DECIMAL' => Zend_Db::FLOAT_TYPE, - 'DOUBLE' => Zend_Db::FLOAT_TYPE, - 'DOUBLE PRECISION' => Zend_Db::FLOAT_TYPE, - 'FIXED' => Zend_Db::FLOAT_TYPE, - 'FLOAT' => Zend_Db::FLOAT_TYPE + Zend_Db::INT_TYPE => Zend_Db::INT_TYPE, + Zend_Db::BIGINT_TYPE => Zend_Db::BIGINT_TYPE, + Zend_Db::FLOAT_TYPE => Zend_Db::FLOAT_TYPE, + Zend_Db::UNSIGNED_TYPE => Zend_Db::UNSIGNED_TYPE, + 'INT' => Zend_Db::INT_TYPE, + 'INTEGER' => Zend_Db::INT_TYPE, + 'MEDIUMINT' => Zend_Db::INT_TYPE, + 'SMALLINT' => Zend_Db::INT_TYPE, + 'TINYINT' => Zend_Db::INT_TYPE, + 'BIGINT' => Zend_Db::BIGINT_TYPE, + 'SERIAL' => Zend_Db::BIGINT_TYPE, + 'DEC' => Zend_Db::FLOAT_TYPE, + 'DECIMAL' => Zend_Db::FLOAT_TYPE, + 'DOUBLE' => Zend_Db::FLOAT_TYPE, + 'DOUBLE PRECISION' => Zend_Db::FLOAT_TYPE, + 'FIXED' => Zend_Db::FLOAT_TYPE, + 'FLOAT' => Zend_Db::FLOAT_TYPE, + 'UNSIGNEDINT' => Zend_Db::UNSIGNED_TYPE, + 'UNSIGNEDINTEGER' => Zend_Db::UNSIGNED_TYPE, + 'UNSIGNEDMEDIUMINT' => Zend_Db::UNSIGNED_TYPE, + 'UNSIGNEDSMALLINT' => Zend_Db::UNSIGNED_TYPE, + 'UNSIGNEDTINYINT' => Zend_Db::UNSIGNED_TYPE ); /** Index: Db/Adapter/Pdo/Oci.php =================================================================== --- Db/Adapter/Pdo/Oci.php (revision 21011) +++ Db/Adapter/Pdo/Oci.php (working copy) @@ -55,22 +55,24 @@ /** * Keys are UPPERCASE SQL datatypes or the constants - * Zend_Db::INT_TYPE, Zend_Db::BIGINT_TYPE, or Zend_Db::FLOAT_TYPE. + * Zend_Db::INT_TYPE, Zend_Db::BIGINT_TYPE, Zend_Db::FLOAT_TYPE or Zend_Db::UNSIGNED_TYPE. * * Values are: * 0 = 32-bit integer * 1 = 64-bit integer * 2 = float or decimal + * 3 = unsigned integer * - * @var array Associative array of datatypes to values 0, 1, or 2. + * @var array Associative array of datatypes to values 0, 1, 2 or 3. */ protected $_numericDataTypes = array( - Zend_Db::INT_TYPE => Zend_Db::INT_TYPE, - Zend_Db::BIGINT_TYPE => Zend_Db::BIGINT_TYPE, - Zend_Db::FLOAT_TYPE => Zend_Db::FLOAT_TYPE, - 'BINARY_DOUBLE' => Zend_Db::FLOAT_TYPE, - 'BINARY_FLOAT' => Zend_Db::FLOAT_TYPE, - 'NUMBER' => Zend_Db::FLOAT_TYPE + Zend_Db::INT_TYPE => Zend_Db::INT_TYPE, + Zend_Db::BIGINT_TYPE => Zend_Db::BIGINT_TYPE, + Zend_Db::FLOAT_TYPE => Zend_Db::FLOAT_TYPE, + Zend_Db::UNSIGNED_TYPE => Zend_Db::UNSIGNED_TYPE, + 'BINARY_DOUBLE' => Zend_Db::FLOAT_TYPE, + 'BINARY_FLOAT' => Zend_Db::FLOAT_TYPE, + 'NUMBER' => Zend_Db::FLOAT_TYPE ); /** Index: Db/Adapter/Pdo/Pgsql.php =================================================================== --- Db/Adapter/Pdo/Pgsql.php (revision 21011) +++ Db/Adapter/Pdo/Pgsql.php (working copy) @@ -48,28 +48,33 @@ /** * Keys are UPPERCASE SQL datatypes or the constants - * Zend_Db::INT_TYPE, Zend_Db::BIGINT_TYPE, or Zend_Db::FLOAT_TYPE. + * Zend_Db::INT_TYPE, Zend_Db::BIGINT_TYPE, Zend_Db::FLOAT_TYPE or Zend_Db::UNSIGNED_TYPE. * * Values are: * 0 = 32-bit integer * 1 = 64-bit integer * 2 = float or decimal + * 3 = unsigned integer * - * @var array Associative array of datatypes to values 0, 1, or 2. + * @var array Associative array of datatypes to values 0, 1, 2 or 3. */ protected $_numericDataTypes = array( - Zend_Db::INT_TYPE => Zend_Db::INT_TYPE, - Zend_Db::BIGINT_TYPE => Zend_Db::BIGINT_TYPE, - Zend_Db::FLOAT_TYPE => Zend_Db::FLOAT_TYPE, - 'INTEGER' => Zend_Db::INT_TYPE, - 'SERIAL' => Zend_Db::INT_TYPE, - 'SMALLINT' => Zend_Db::INT_TYPE, - 'BIGINT' => Zend_Db::BIGINT_TYPE, - 'BIGSERIAL' => Zend_Db::BIGINT_TYPE, - 'DECIMAL' => Zend_Db::FLOAT_TYPE, - 'DOUBLE PRECISION' => Zend_Db::FLOAT_TYPE, - 'NUMERIC' => Zend_Db::FLOAT_TYPE, - 'REAL' => Zend_Db::FLOAT_TYPE + Zend_Db::INT_TYPE => Zend_Db::INT_TYPE, + Zend_Db::BIGINT_TYPE => Zend_Db::BIGINT_TYPE, + Zend_Db::FLOAT_TYPE => Zend_Db::FLOAT_TYPE, + Zend_Db::UNSIGNED_TYPE => Zend_Db::UNSIGNED_TYPE, + 'INTEGER' => Zend_Db::INT_TYPE, + 'SERIAL' => Zend_Db::INT_TYPE, + 'SMALLINT' => Zend_Db::INT_TYPE, + 'BIGINT' => Zend_Db::BIGINT_TYPE, + 'BIGSERIAL' => Zend_Db::BIGINT_TYPE, + 'DECIMAL' => Zend_Db::FLOAT_TYPE, + 'DOUBLE PRECISION' => Zend_Db::FLOAT_TYPE, + 'NUMERIC' => Zend_Db::FLOAT_TYPE, + 'REAL' => Zend_Db::FLOAT_TYPE, + 'UNSIGNEDINTEGER' => Zend_Db::UNSIGNED_TYPE, + 'UNSIGNEDSERIAL' => Zend_Db::UNSIGNED_TYPE, + 'UNSIGNEDSMALLINT' => Zend_Db::UNSIGNED_TYPE ); /** Index: Db/Adapter/Pdo/Sqlite.php =================================================================== --- Db/Adapter/Pdo/Sqlite.php (revision 21011) +++ Db/Adapter/Pdo/Sqlite.php (working copy) @@ -48,21 +48,23 @@ /** * Keys are UPPERCASE SQL datatypes or the constants - * Zend_Db::INT_TYPE, Zend_Db::BIGINT_TYPE, or Zend_Db::FLOAT_TYPE. + * Zend_Db::INT_TYPE, Zend_Db::BIGINT_TYPE, Zend_Db::FLOAT_TYPE or Zend_Db::UNSIGNED_TYPE. * * Values are: * 0 = 32-bit integer * 1 = 64-bit integer * 2 = float or decimal + * 3 = unsigned integer * - * @var array Associative array of datatypes to values 0, 1, or 2. + * @var array Associative array of datatypes to values 0, 1, 2 or 3. */ protected $_numericDataTypes = array( - Zend_Db::INT_TYPE => Zend_Db::INT_TYPE, - Zend_Db::BIGINT_TYPE => Zend_Db::BIGINT_TYPE, - Zend_Db::FLOAT_TYPE => Zend_Db::FLOAT_TYPE, - 'INTEGER' => Zend_Db::BIGINT_TYPE, - 'REAL' => Zend_Db::FLOAT_TYPE + Zend_Db::INT_TYPE => Zend_Db::INT_TYPE, + Zend_Db::BIGINT_TYPE => Zend_Db::BIGINT_TYPE, + Zend_Db::FLOAT_TYPE => Zend_Db::FLOAT_TYPE, + Zend_Db::UNSIGNED_TYPE => Zend_Db::UNSIGNED_TYPE, + 'INTEGER' => Zend_Db::BIGINT_TYPE, + 'REAL' => Zend_Db::FLOAT_TYPE ); /** Index: Db/Adapter/Sqlsrv.php =================================================================== --- Db/Adapter/Sqlsrv.php (revision 21011) +++ Db/Adapter/Sqlsrv.php (working copy) @@ -72,29 +72,35 @@ /** * Keys are UPPERCASE SQL datatypes or the constants - * Zend_Db::INT_TYPE, Zend_Db::BIGINT_TYPE, or Zend_Db::FLOAT_TYPE. + * Zend_Db::INT_TYPE, Zend_Db::BIGINT_TYPE, Zend_Db::FLOAT_TYPE or Zend_Db::UNSIGNED_TYPE. * * Values are: * 0 = 32-bit integer * 1 = 64-bit integer * 2 = float or decimal + * 3 = unsigned integer * - * @var array Associative array of datatypes to values 0, 1, or 2. + * @todo What to do with unsigned bigint? + * @var array Associative array of datatypes to values 0, 1, 2 or 3. */ protected $_numericDataTypes = array( - Zend_Db::INT_TYPE => Zend_Db::INT_TYPE, - Zend_Db::BIGINT_TYPE => Zend_Db::BIGINT_TYPE, - Zend_Db::FLOAT_TYPE => Zend_Db::FLOAT_TYPE, - 'INT' => Zend_Db::INT_TYPE, - 'SMALLINT' => Zend_Db::INT_TYPE, - 'TINYINT' => Zend_Db::INT_TYPE, - 'BIGINT' => Zend_Db::BIGINT_TYPE, - 'DECIMAL' => Zend_Db::FLOAT_TYPE, - 'FLOAT' => Zend_Db::FLOAT_TYPE, - 'MONEY' => Zend_Db::FLOAT_TYPE, - 'NUMERIC' => Zend_Db::FLOAT_TYPE, - 'REAL' => Zend_Db::FLOAT_TYPE, - 'SMALLMONEY' => Zend_Db::FLOAT_TYPE, + Zend_Db::INT_TYPE => Zend_Db::INT_TYPE, + Zend_Db::BIGINT_TYPE => Zend_Db::BIGINT_TYPE, + Zend_Db::FLOAT_TYPE => Zend_Db::FLOAT_TYPE, + Zend_Db::UNSIGNED_TYPE => Zend_Db::UNSIGNED_TYPE, + 'INT' => Zend_Db::INT_TYPE, + 'SMALLINT' => Zend_Db::INT_TYPE, + 'TINYINT' => Zend_Db::INT_TYPE, + 'BIGINT' => Zend_Db::BIGINT_TYPE, + 'DECIMAL' => Zend_Db::FLOAT_TYPE, + 'FLOAT' => Zend_Db::FLOAT_TYPE, + 'MONEY' => Zend_Db::FLOAT_TYPE, + 'NUMERIC' => Zend_Db::FLOAT_TYPE, + 'REAL' => Zend_Db::FLOAT_TYPE, + 'SMALLMONEY' => Zend_Db::FLOAT_TYPE, + 'UNSIGNEDINT' => Zend_Db::UNSIGNED_TYPE, + 'UNSIGNEDSMALLINT' => Zend_Db::UNSIGNED_TYPE, + 'UNSIGNEDTINYINT' => Zend_Db::UNSIGNED_TYPE ); /**