CreoleTypes Class Reference

Inheritance diagram for CreoleTypes:

MSSQLTypes MySQLTypes OCI8Types ODBCTypes PgSQLTypes SQLiteTypes

List of all members.

Static Public Member Functions

static getType ($nativeType)
 This method returns the generic Creole (JDBC-like) type when given the native db type.
static getNativeType ($creoleType)
 This method will return a native type that corresponds to the specified Creole (JDBC-like) type.
static getAffix ($creoleType)
 Gets the "affix" to use for ResultSet::get*() and PreparedStatement::set*() methods.
static getCreoleName ($creoleType)
 Given the integer type, this method will return the corresponding type name.
static getCreoleCode ($creoleTypeName)
 Given the name of a type (e.g.

Public Attributes

const BOOLEAN = 1
const BIGINT = 2
const SMALLINT = 3
const TINYINT = 4
const INTEGER = 5
const CHAR = 6
const VARCHAR = 7
const TEXT = 17
const FLOAT = 8
const DOUBLE = 9
const DATE = 10
const TIME = 11
const TIMESTAMP = 12
const VARBINARY = 13
const NUMERIC = 14
const BLOB = 15
const CLOB = 16
const LONGVARCHAR = 17
const DECIMAL = 18
const REAL = 19
const BINARY = 20
const LONGVARBINARY = 21
const YEAR = 22
const ARR = 23
 this is "ARRAY" from JDBC types
const OTHER = -1

Static Protected Attributes

static $affixMap
 Map of Creole type integers to the setter/getter affix.
static $creoleTypeMap
 Map of Creole type integers to their textual name.


Detailed Description

Definition at line 30 of file CreoleTypes.php.


Member Function Documentation

static CreoleTypes::getAffix ( creoleType  )  [static]

Gets the "affix" to use for ResultSet::get*() and PreparedStatement::set*() methods.

$setter = 'set' . CreoleTypes::getAffix(CreoleTypes::INTEGER); $stmt->$setter(1, $intval); // or $getter = 'get' . CreoleTypes::getAffix(CreoleTypes::TIMESTAMP); $timestamp = $rs->$getter();

Parameters:
int $creoleType The Creole types.
Returns:
string The default affix for getting/setting cols of this type.
Exceptions:
SQLException if $creoleType does not correspond to an affix

Definition at line 148 of file CreoleTypes.php.

Referenced by Record::doDelete(), Record::doInsert(), Record::doUpdate(), and Record::refresh().

00149         {
00150             if (!isset(self::$affixMap[$creoleType])) {
00151                 $e = new SQLException("Unable to return 'affix' for unknown CreoleType: " . $creoleType);
00152                 throw $e;
00153             }
00154             return self::$affixMap[$creoleType];
00155         }

static CreoleTypes::getCreoleCode ( creoleTypeName  )  [static]

Given the name of a type (e.g.

'VARCHAR') this method will return the corresponding integer.

Parameters:
string $creoleTypeName The case-sensisive (must be uppercase) name of the Creole type (e.g. 'VARCHAR').
Returns:
int the Creole type.

Definition at line 175 of file CreoleTypes.php.

00176         {
00177             $type = array_search($creoleTypeName, self::$creoleTypeMap);
00178             if ($type === false) {
00179                return null;
00180             }
00181             return $type;
00182         }

static CreoleTypes::getCreoleName ( creoleType  )  [static]

Given the integer type, this method will return the corresponding type name.

Parameters:
int $creoleType the integer Creole type.
Returns:
string The name of the Creole type (e.g. 'VARCHAR').

Definition at line 162 of file CreoleTypes.php.

00163         {
00164             if (!isset(self::$creoleTypeMap[$creoleType])) {
00165                 return null;
00166             }
00167             return self::$creoleTypeMap[$creoleType];
00168         }

static CreoleTypes::getNativeType ( creoleType  )  [static, abstract]

This method will return a native type that corresponds to the specified Creole (JDBC-like) type.

If there is more than one matching native type, then the LAST defined native type will be returned.

Returns:
string Native type string.

Reimplemented in MSSQLTypes, MySQLTypes, ODBCTypes, OCI8Types, PgSQLTypes, and SQLiteTypes.

static CreoleTypes::getType ( nativeType  )  [static, abstract]

This method returns the generic Creole (JDBC-like) type when given the native db type.

Parameters:
string $nativeType DB native type (e.g. 'TEXT', 'byetea', etc.).
Returns:
int Creole native type (e.g. Types::LONGVARCHAR, Types::BINARY, etc.).

Reimplemented in MSSQLTypes, MySQLTypes, ODBCTypes, OCI8Types, PgSQLTypes, and SQLiteTypes.


Member Data Documentation

CreoleTypes::$affixMap [static, protected]

Initial value:

 array(
                self::BOOLEAN => 'Boolean',
                self::BIGINT => 'String',
                self::CHAR => 'String',
                self::DATE => 'Date',
                self::DOUBLE => 'Float',
                self::FLOAT => 'Float',
                self::INTEGER => 'Int',
                self::SMALLINT => 'Int',
                self::TINYINT => 'Int',
                self::TIME => 'Time',
                self::TIMESTAMP => 'Timestamp',
                self::VARCHAR => 'String',                
                self::VARBINARY => 'Blob',
                self::NUMERIC => 'Float',
                self::BLOB => 'Blob',
                self::CLOB => 'Clob',
                self::LONGVARCHAR => 'String',
                self::DECIMAL => 'Float',
                self::REAL => 'Float',
                self::BINARY => 'Blob',
                self::LONGVARBINARY => 'Blob',
                self::YEAR => 'Int',
                self::ARR => 'Array',
                self::OTHER => '', 
                )
Map of Creole type integers to the setter/getter affix.

Definition at line 62 of file CreoleTypes.php.

CreoleTypes::$creoleTypeMap [static, protected]

Initial value:

 array(
                self::BOOLEAN => 'BOOLEAN',
                self::BIGINT => 'BIGINT',
                self::SMALLINT => 'SMALLINT',
                self::TINYINT => 'TINYINT',
                self::INTEGER => 'INTEGER',
                self::NUMERIC => 'NUMERIC',
                self::DECIMAL => 'DECIMAL',
                self::REAL => 'REAL',
                self::FLOAT => 'FLOAT',
                self::DOUBLE => 'DOUBLE',
                self::CHAR => 'CHAR',
                self::VARCHAR => 'VARCHAR',
                self::TEXT => 'TEXT',
                self::TIME => 'TIME',
                self::TIMESTAMP => 'TIMESTAMP',
                self::DATE => 'DATE',
                self::YEAR => 'YEAR',
                self::VARBINARY => 'VARBINARY',                
                self::BLOB => 'BLOB',
                self::CLOB => 'CLOB',
                self::LONGVARCHAR => 'LONGVARCHAR',
                self::BINARY => 'BINARY',
                self::LONGVARBINARY => 'LONGVARBINARY',                
                self::ARR => 'ARR',
                self::OTHER => 'OTHER', 
                )
Map of Creole type integers to their textual name.

Definition at line 90 of file CreoleTypes.php.

const CreoleTypes::ARR = 23

this is "ARRAY" from JDBC types

Definition at line 57 of file CreoleTypes.php.

Definition at line 33 of file CreoleTypes.php.

Referenced by ODBCTypes::loadTypeMap().

const CreoleTypes::BINARY = 20

Definition at line 52 of file CreoleTypes.php.

Referenced by ODBCTypes::loadTypeMap().

const CreoleTypes::BLOB = 15

Definition at line 47 of file CreoleTypes.php.

Referenced by ODBCCachedResultSet::loadCache().

Definition at line 32 of file CreoleTypes.php.

Referenced by ODBCTypes::loadTypeMap().

const CreoleTypes::CHAR = 6

Definition at line 37 of file CreoleTypes.php.

Referenced by ODBCTypes::loadTypeMap().

const CreoleTypes::CLOB = 16

Definition at line 48 of file CreoleTypes.php.

Referenced by ODBCCachedResultSet::loadCache().

const CreoleTypes::DATE = 10

Definition at line 42 of file CreoleTypes.php.

Referenced by ODBCTypes::loadTypeMap().

Definition at line 50 of file CreoleTypes.php.

Referenced by ODBCTypes::loadTypeMap().

Definition at line 41 of file CreoleTypes.php.

Referenced by ODBCTypes::loadTypeMap().

const CreoleTypes::FLOAT = 8

Definition at line 40 of file CreoleTypes.php.

Referenced by ODBCTypes::loadTypeMap().

Definition at line 36 of file CreoleTypes.php.

Referenced by ODBCTypes::loadTypeMap().

Definition at line 53 of file CreoleTypes.php.

Referenced by ODBCCachedResultSet::loadCache(), and ODBCTypes::loadTypeMap().

Definition at line 49 of file CreoleTypes.php.

Referenced by ODBCCachedResultSet::loadCache(), and ODBCTypes::loadTypeMap().

Definition at line 46 of file CreoleTypes.php.

Referenced by ODBCTypes::loadTypeMap(), and PgSQLTableInfo::processLengthScale().

const CreoleTypes::OTHER = -1

const CreoleTypes::REAL = 19

Definition at line 51 of file CreoleTypes.php.

Referenced by ODBCTypes::loadTypeMap().

Definition at line 34 of file CreoleTypes.php.

Referenced by ODBCTypes::loadTypeMap().

const CreoleTypes::TEXT = 17

Definition at line 39 of file CreoleTypes.php.

Referenced by SQLiteTypes::getType().

const CreoleTypes::TIME = 11

Definition at line 43 of file CreoleTypes.php.

Referenced by ODBCTypes::loadTypeMap(), and PgSQLTableInfo::processLengthScale().

Definition at line 44 of file CreoleTypes.php.

Referenced by ODBCTypes::loadTypeMap(), and PgSQLTableInfo::processLengthScale().

Definition at line 35 of file CreoleTypes.php.

Referenced by ODBCTypes::loadTypeMap().

Definition at line 45 of file CreoleTypes.php.

Referenced by ODBCTypes::loadTypeMap().

Definition at line 38 of file CreoleTypes.php.

Referenced by ODBCTypes::loadTypeMap().

const CreoleTypes::YEAR = 22

Definition at line 54 of file CreoleTypes.php.


The documentation for this class was generated from the following file:

Generated on Wed May 6 23:10:49 2009 for fareofficelib by  doxygen 1.5.8