diff options
| author | Christophe Simonis <chs@odoo.com> | 2017-05-02 18:53:44 +0200 |
|---|---|---|
| committer | Christophe Simonis <chs@odoo.com> | 2017-05-02 18:53:44 +0200 |
| commit | bf7de4d32ff30dd8b322d6c9c2cf2e9feb302e6f (patch) | |
| tree | bdb67554300b520e41fec6dc32107d4b90156e40 /odoo/tools/sql.py | |
| parent | a97cb66961a77e9e3efb6de0d852e93f57afc350 (diff) | |
| parent | 3f6bb0f544d5bdd102eb06fbc7d5aa9095efc235 (diff) | |
[MERGE] forward port branch saas-15 up to 3f6bb0f544d
Diffstat (limited to 'odoo/tools/sql.py')
| -rw-r--r-- | odoo/tools/sql.py | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/odoo/tools/sql.py b/odoo/tools/sql.py index bd947dd913c..c4e9a143a8e 100644 --- a/odoo/tools/sql.py +++ b/odoo/tools/sql.py @@ -77,12 +77,14 @@ def convert_column(cr, tablename, columnname, columntype): log_exceptions=False) except psycopg2.NotSupportedError: # can't do inplace change -> use a casted temp column - query = 'ALTER TABLE "{0}" RENAME COLUMN "{1}" TO __temp_type_cast; ' \ - 'ALTER TABLE "{0}" ADD COLUMN "{1}" {2}; ' \ - 'UPDATE "{0}" SET "{1}"= __temp_type_cast::{2}' \ - 'ALTER TABLE "{0}" DROP COLUMN __temp_type_cast CASCADE' - cr.execute(query.format(tablename, columntype, columntype)) - _schema.debug("Table %r: column %r changed to type %s", tablename, columntype, columntype) + query = ''' + ALTER TABLE "{0}" RENAME COLUMN "{1}" TO __temp_type_cast; + ALTER TABLE "{0}" ADD COLUMN "{1}" {2}; + UPDATE "{0}" SET "{1}"= __temp_type_cast::{2}; + ALTER TABLE "{0}" DROP COLUMN __temp_type_cast CASCADE; + ''' + cr.execute(query.format(tablename, columnname, columntype)) + _schema.debug("Table %r: column %r changed to type %s", tablename, columnname, columntype) def set_not_null(cr, tablename, columnname): """ Add a NOT NULL constraint on the given column. """ |
