diff options
author | wei <> | 2007-04-12 12:43:49 +0000 |
---|---|---|
committer | wei <> | 2007-04-12 12:43:49 +0000 |
commit | 32b73a0b1dfcd33e07e7fd2b2cf2fd7d42cf48a0 (patch) | |
tree | bf2b348fa854d82dcf8a9f43ffd43df3eba5a1e8 /framework/Data/Common/Pgsql/TPgsqlTableColumn.php | |
parent | 815ce4bcc616c4b0618046651174062efc93fd06 (diff) |
Add Sqlite driver.
Diffstat (limited to 'framework/Data/Common/Pgsql/TPgsqlTableColumn.php')
-rw-r--r-- | framework/Data/Common/Pgsql/TPgsqlTableColumn.php | 20 |
1 files changed, 11 insertions, 9 deletions
diff --git a/framework/Data/Common/Pgsql/TPgsqlTableColumn.php b/framework/Data/Common/Pgsql/TPgsqlTableColumn.php index 66053a63..a00f4a8f 100644 --- a/framework/Data/Common/Pgsql/TPgsqlTableColumn.php +++ b/framework/Data/Common/Pgsql/TPgsqlTableColumn.php @@ -25,23 +25,25 @@ Prado::using('System.Data.Common.TDbTableColumn'); */
class TPgsqlTableColumn extends TDbTableColumn
{
+ private static $types=array(
+ 'integer' => array('bit', 'bit varying', 'real', 'serial', 'int', 'integer'),
+ 'boolean' => array('boolean'),
+ 'float' => array('bigint', 'bigserial', 'double precision', 'money', 'numeric')
+ );
+
/**
* Overrides parent implementation, returns PHP type from the db type.
* @return boolean derived PHP primitive type from the column db type.
*/
public function getPHPType()
{
- switch(strtolower($this->getDbType()))
+ $dbtype = strtolower($this->getDbType());
+ foreach(self::$types as $type => $dbtypes)
{
- case 'bit': case 'bit varying': case 'real': case 'serial': case 'int': case 'integer':
- return 'integer';
- case 'boolean':
- return 'boolean';
- case 'bigint': case 'bigserial': case 'double precision': case 'money': case 'numeric':
- return 'float';
- default:
- return 'string';
+ if(in_array($dbtype, $dbtypes))
+ return $type;
}
+ return 'string';
}
}
|