diff options
Diffstat (limited to 'migrate/changeset/databases/postgres.py')
-rw-r--r-- | migrate/changeset/databases/postgres.py | 55 |
1 files changed, 32 insertions, 23 deletions
diff --git a/migrate/changeset/databases/postgres.py b/migrate/changeset/databases/postgres.py index 8c907fd..d1d4cc8 100644 --- a/migrate/changeset/databases/postgres.py +++ b/migrate/changeset/databases/postgres.py @@ -1,44 +1,53 @@ +""" + `PostgreSQL`_ database specific implementations of changeset classes. + + .. _`PostgreSQL`: http://www.postgresql.org/ +""" from migrate.changeset import ansisql from sqlalchemy.databases import postgres as sa_base #import sqlalchemy as sa + PGSchemaGenerator = sa_base.PGSchemaGenerator + class PGSchemaGeneratorMixin(object): - def _do_quote_table_identifier(self, identifier): - return identifier - def _do_quote_column_identifier(self, identifier): - return '"%s"'%identifier + """Common code used by the PostgreSQL specific classes.""" -class PGColumnGenerator(PGSchemaGenerator,ansisql.ANSIColumnGenerator, PGSchemaGeneratorMixin): def _do_quote_table_identifier(self, identifier): return identifier + def _do_quote_column_identifier(self, identifier): return '"%s"'%identifier + +class PGColumnGenerator(PGSchemaGenerator, ansisql.ANSIColumnGenerator, + PGSchemaGeneratorMixin): + """PostgreSQL column generator implementation.""" + pass + + class PGColumnDropper(ansisql.ANSIColumnDropper, PGSchemaGeneratorMixin): - def _do_quote_table_identifier(self, identifier): - return identifier - def _do_quote_column_identifier(self, identifier): - return '"%s"'%identifier + """PostgreSQL column dropper implementation.""" + pass + class PGSchemaChanger(ansisql.ANSISchemaChanger, PGSchemaGeneratorMixin): - def _do_quote_table_identifier(self, identifier): - return identifier - def _do_quote_column_identifier(self, identifier): - return '"%s"'%identifier + """PostgreSQL schema changer implementation.""" + pass -class PGConstraintGenerator(ansisql.ANSIConstraintGenerator, PGSchemaGeneratorMixin): - def _do_quote_table_identifier(self, identifier): - return identifier - def _do_quote_column_identifier(self, identifier): - return '"%s"'%identifier -class PGConstraintDropper(ansisql.ANSIConstraintDropper, PGSchemaGeneratorMixin): - def _do_quote_table_identifier(self, identifier): - return identifier - def _do_quote_column_identifier(self, identifier): - return '"%s"'%identifier +class PGConstraintGenerator(ansisql.ANSIConstraintGenerator, + PGSchemaGeneratorMixin): + """PostgreSQL constraint generator implementation.""" + pass + + +class PGConstraintDropper(ansisql.ANSIConstraintDropper, + PGSchemaGeneratorMixin): + """PostgreSQL constaint dropper implementation.""" + pass + class PGDialect(ansisql.ANSIDialect): columngenerator = PGColumnGenerator |