diff options
author | Jason Kirtland <jek@discorporate.us> | 2007-10-04 21:03:29 +0000 |
---|---|---|
committer | Jason Kirtland <jek@discorporate.us> | 2007-10-04 21:03:29 +0000 |
commit | af0ca25d10ea505df6c5b740951e88e9af36bd60 (patch) | |
tree | 1c1ef2aa5299312078bd09399068d6aac6eb000f | |
parent | 6fb5f1047c00a81bd80406d6989aa55e7060b107 (diff) | |
download | sqlalchemy-af0ca25d10ea505df6c5b740951e88e9af36bd60.tar.gz |
- Sequences gain a basic dialect-specific kwargs bucket, like Tables.
-rw-r--r-- | lib/sqlalchemy/schema.py | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/lib/sqlalchemy/schema.py b/lib/sqlalchemy/schema.py index 8ca5567e4..29a28e54b 100644 --- a/lib/sqlalchemy/schema.py +++ b/lib/sqlalchemy/schema.py @@ -768,9 +768,10 @@ class ColumnDefault(DefaultGenerator): return "ColumnDefault(%s)" % repr(self.arg) class Sequence(DefaultGenerator): - """Represent a sequence, which applies to Oracle and Postgres databases.""" + """Represents a named sequence.""" - def __init__(self, name, start = None, increment = None, schema=None, optional=False, quote=False, **kwargs): + def __init__(self, name, start=None, increment=None, schema=None, + optional=False, quote=False, **kwargs): super(Sequence, self).__init__(**kwargs) self.name = name self.start = start @@ -778,22 +779,28 @@ class Sequence(DefaultGenerator): self.optional=optional self.quote = quote self.schema = schema + self.kwargs = kwargs def __repr__(self): return "Sequence(%s)" % ', '.join( [repr(self.name)] + - ["%s=%s" % (k, repr(getattr(self, k))) for k in ['start', 'increment', 'optional']]) + ["%s=%s" % (k, repr(getattr(self, k))) + for k in ['start', 'increment', 'optional']]) def _set_parent(self, column): super(Sequence, self)._set_parent(column) column.sequence = self def create(self, bind=None, checkfirst=True): + """Creates this sequence in the database.""" + if bind is None: bind = self._get_bind(raiseerr=True) bind.create(self, checkfirst=checkfirst) def drop(self, bind=None, checkfirst=True): + """Drops this sequence from the database.""" + if bind is None: bind = self._get_bind(raiseerr=True) bind.drop(self, checkfirst=checkfirst) |