我们从Python开源项目中,提取了以下35个代码示例,用于说明如何使用sqlalchemy.schema.Sequence()。
def get_column_specification(self, column, override_pk=False, **kwargs): colspec = column.name if column.primary_key and isinstance(column.type, types.Integer) and (column.default is None or (isinstance(column.default, schema.Sequence) and column.default.optional)): colspec += " SERIAL" else: colspec += " " + column.type.get_col_spec() default = self.get_column_default_string(column) if default is not None: colspec += " DEFAULT " + default if not column.nullable: colspec += " NOT NULL" if column.primary_key and not override_pk: colspec += " PRIMARY KEY" if column.foreign_key: colspec += " REFERENCES %s(%s)" % (column.column.foreign_key.column.table.fullname, column.column.foreign_key.column.name) return colspec
def downgrade(): for seqname in ('contact_pronouns_position', 'contact_name_position', 'contact_email_position', ): op.execute(DropSequence(Sequence(seqname))) # ### commands auto generated by Alembic - please adjust! ### op.drop_table('contact_pronouns') op.drop_table('contact_name') op.drop_table('contact_email') op.drop_table('roles_users') op.drop_table('contact') op.drop_index(op.f('ix_user_username'), table_name='user') op.drop_table('user') op.drop_table('role') op.drop_table('pronouns') # ### end Alembic commands ###
def upgrade(): # ### commands auto generated by Alembic - please adjust! ### op.create_table('tag', sa.Column('id', sa.Integer(), nullable=False), sa.Column('user_id', sa.Integer(), nullable=False), sa.Column('name', sa.String(length=80), nullable=False), sa.Column('color', ColorType(length=20), nullable=True), sa.ForeignKeyConstraint(['user_id'], ['user.id'], ), sa.PrimaryKeyConstraint('id'), sa.UniqueConstraint('user_id', 'name') ) op.create_table('contact_tag', sa.Column('contact_id', sa.Integer(), nullable=False), sa.Column('tag_id', sa.Integer(), nullable=False), sa.Column('position', sa.Integer(), nullable=False), sa.Column('note', sa.Text(), nullable=True), sa.ForeignKeyConstraint(['contact_id'], ['contact.id'], ), sa.ForeignKeyConstraint(['tag_id'], ['tag.id'], ), sa.PrimaryKeyConstraint('contact_id', 'tag_id') ) # ### end Alembic commands ### op.execute(CreateSequence(Sequence('contact_tag_position')))
def get_column_specification(self, column, **kwargs): colspec = self.preparer.format_column(column) + " " + \ self.dialect.type_compiler.process( column.type, type_expression=column) if column.table is None: raise exc.CompileError( "The Sybase dialect requires Table-bound " "columns in order to generate DDL") seq_col = column.table._autoincrement_column # install a IDENTITY Sequence if we have an implicit IDENTITY column if seq_col is column: sequence = isinstance(column.default, sa_schema.Sequence) \ and column.default if sequence: start, increment = sequence.start or 1, \ sequence.increment or 1 else: start, increment = 1, 1 if (start, increment) == (1, 1): colspec += " IDENTITY" else: # TODO: need correct syntax for this colspec += " IDENTITY(%s,%s)" % (start, increment) else: default = self.get_column_default_string(column) if default is not None: colspec += " DEFAULT " + default if column.nullable is not None: if not column.nullable or column.primary_key: colspec += " NOT NULL" else: colspec += " NULL" return colspec
def get_column_default(self, column): if column.primary_key and isinstance(column.type, types.Integer) and (column.default is None or (isinstance(column.default, schema.Sequence) and column.default.optional)): c = self.proxy("select nextval('%s_%s_seq')" % (column.table.name, column.name)) return c.fetchone()[0] else: return ansisql.ANSIDefaultRunner.get_column_default(self, column)
def pre_exec(self, proxy, compiled, parameters, **kwargs): # this is just an assertion that all the primary key columns in an insert statement # have a value set up, or have a default generator ready to go if getattr(compiled, "isinsert", False): if isinstance(parameters, list): plist = parameters else: plist = [parameters] for param in plist: for primary_key in compiled.statement.table.primary_key: if not param.has_key(primary_key.key) or param[primary_key.key] is None: if primary_key.default is None: raise "Column '%s.%s': Oracle primary key columns require a default value or a schema.Sequence to create ids" % (primary_key.table.name, primary_key.name)
def get_column_specification(self, column, **kwargs): colspec = self.preparer.format_column(column) + " " + \ self.dialect.type_compiler.process(column.type) if column.table is None: raise exc.CompileError( "The Sybase dialect requires Table-bound " "columns in order to generate DDL") seq_col = column.table._autoincrement_column # install a IDENTITY Sequence if we have an implicit IDENTITY column if seq_col is column: sequence = isinstance(column.default, sa_schema.Sequence) \ and column.default if sequence: start, increment = sequence.start or 1, \ sequence.increment or 1 else: start, increment = 1, 1 if (start, increment) == (1, 1): colspec += " IDENTITY" else: # TODO: need correct syntax for this colspec += " IDENTITY(%s,%s)" % (start, increment) else: default = self.get_column_default_string(column) if default is not None: colspec += " DEFAULT " + default if column.nullable is not None: if not column.nullable or column.primary_key: colspec += " NOT NULL" else: colspec += " NULL" return colspec
def upgrade(): op.execute( CreateSequence( Sequence('db_row_tile_row_id_seq', minvalue=0, start=0, increment=1) ) ) op.create_table( 'db_row', sa.Column('id', sa.BigInteger, primary_key=True), sa.Column('db_array_id', sa.BigInteger, sa.ForeignKey('db_array.id'), nullable=False), sa.Column('tile_row_id', sa.BigInteger, Sequence( 'db_row_tile_row_id_seq'), nullable=False) )
def upgrade(): op.execute(CreateSequence(Sequence('callset_id_seq', minvalue=0, start=0))) op.create_table( 'callset', sa.Column('id', sa.BigInteger, Sequence('callset_id_seq'), primary_key=True), sa.Column('guid', sa.String(36), nullable=False, unique=True), sa.Column('individual_id', sa.BigInteger, sa.ForeignKey('individual.id'), nullable=False), sa.Column('dbrow_id', sa.BigInteger, sa.ForeignKey('db_row.id'), nullable=False), sa.Column('name', sa.Text, nullable=False), sa.Column('created', sa.BigInteger, nullable=False), sa.Column('updated', sa.BigInteger, nullable=False), sa.Column('info', sa.PickleType) )
def downgrade(): op.execute(DropSequence(Sequence('contact_tag_position'))) # ### commands auto generated by Alembic - please adjust! ### op.drop_table('contact_tag') op.drop_table('tag') # ### end Alembic commands ###
def upgrade(): # ### commands auto generated by Alembic - please adjust! ### op.execute(CreateSequence(Sequence("endpoint_log_id_seq"))) op.execute(CreateSequence(Sequence("session_token_id_seq"))) op.execute(CreateSequence(Sequence("system_log_id_seq"))) op.execute(CreateSequence(Sequence("user_account_id_seq"))) op.create_table('endpoint_log', sa.Column('id', sa.INTEGER(), server_default=sa.text("nextval('endpoint_log_id_seq')"), nullable=False), sa.Column('start_utc', postgresql.TIMESTAMP(), nullable=False), sa.Column('duration_ms', sa.INTEGER(), nullable=False), sa.Column('endpoint', sa.TEXT(), nullable=True), sa.Column('username', sa.TEXT(), nullable=True), sa.Column('method', sa.TEXT(), nullable=True), sa.Column('http_code', sa.TEXT(), nullable=True), sa.Column('error_message', sa.TEXT(), nullable=True), sa.PrimaryKeyConstraint('id') ) op.create_table('session_token', sa.Column('id', sa.INTEGER(), server_default=sa.text("nextval('session_token_id_seq')"), nullable=False), sa.Column('user_id', sa.TEXT(), nullable=True), sa.Column('token', sa.TEXT(), nullable=True), sa.Column('created_utc', postgresql.TIMESTAMP(), server_default=sa.text('now()'), nullable=True), sa.PrimaryKeyConstraint('id') ) op.create_table('system_log', sa.Column('id', sa.INTEGER(), server_default=sa.text("nextval('system_log_id_seq')"), nullable=False), sa.Column('event_utc', postgresql.TIMESTAMP(), server_default=sa.text('now()'), nullable=False), sa.Column('level', sa.TEXT(), nullable=True), sa.Column('message', sa.TEXT(), nullable=True), sa.Column('source', sa.TEXT(), nullable=True), sa.PrimaryKeyConstraint('id') ) op.create_table('user_account', sa.Column('id', sa.INTEGER(), server_default=sa.text("nextval('user_account_id_seq')"), nullable=False), sa.Column('user_id', sa.TEXT(), nullable=True), sa.Column('email', sa.TEXT(), nullable=True), sa.Column('secret', sa.TEXT(), nullable=True), sa.Column('creation_utc', postgresql.TIMESTAMP(), server_default=sa.text('now()'), nullable=True), sa.Column('last_updated_utc', postgresql.TIMESTAMP(), server_default=sa.text('now()'), nullable=True), sa.PrimaryKeyConstraint('id') ) # ### end Alembic commands ###