diff options
author | Robert Leftwich <rtl@pobox.com> | 2005-12-01 12:51:38 +0000 |
---|---|---|
committer | Robert Leftwich <rtl@pobox.com> | 2005-12-01 12:51:38 +0000 |
commit | 9ec6a9b8e336caf6ef79451f1154f40fc5e771a1 (patch) | |
tree | 8302755a21f48ae8af5845c281b21a8d95b79a46 /lib/sqlalchemy/databases/postgres.py | |
parent | 2a1098f831a0f9b3f9a01fa5cd2a46789b533a61 (diff) | |
download | sqlalchemy-9ec6a9b8e336caf6ef79451f1154f40fc5e771a1.tar.gz |
Added float type to support real/double precision/float8/etc sql data types. Added columns.py as unit test. Modified sqlite.py, postgres.py and mysql.py to use the new type where appropriate (note -Oracle is unchanged at present).
Diffstat (limited to 'lib/sqlalchemy/databases/postgres.py')
-rw-r--r-- | lib/sqlalchemy/databases/postgres.py | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/lib/sqlalchemy/databases/postgres.py b/lib/sqlalchemy/databases/postgres.py index c8e742fe4..75b9e1aee 100644 --- a/lib/sqlalchemy/databases/postgres.py +++ b/lib/sqlalchemy/databases/postgres.py @@ -36,6 +36,9 @@ except: class PGNumeric(sqltypes.Numeric): def get_col_spec(self): return "NUMERIC(%(precision)s, %(length)s)" % {'precision': self.precision, 'length' : self.length} +class PGFloat(sqltypes.Float): + def get_col_spec(self): + return "FLOAT(%(precision)s)" % {'precision': self.precision} class PGInteger(sqltypes.Integer): def get_col_spec(self): return "INTEGER" @@ -70,6 +73,7 @@ class PGBoolean(sqltypes.Boolean): pg2_colspecs = { sqltypes.Integer : PGInteger, sqltypes.Numeric : PGNumeric, + sqltypes.Float : PGFloat, sqltypes.DateTime : PG2DateTime, sqltypes.String : PGString, sqltypes.Binary : PGBinary, @@ -82,12 +86,17 @@ pg1_colspecs[sqltypes.DateTime] = PG1DateTime pg2_ischema_names = { 'integer' : PGInteger, + 'bigint' : PGInteger, 'character varying' : PGString, 'character' : PGChar, 'text' : PGText, 'numeric' : PGNumeric, + 'float' : PGFloat, + 'real' : PGFloat, + 'double precision' : PGFloat, 'timestamp without time zone' : PG2DateTime, 'bytea' : PGBinary, + 'boolean' : PGBoolean, } pg1_ischema_names = pg2_ischema_names.copy() pg1_ischema_names['timestamp without time zone'] = PG1DateTime |