I'm lost in two places: sa.Column( 'trip_num', sa.Integer, sa.Sequence('trip_num_seq', schema='public', optional=True), primary_key=True, )
1. I'm specifying schema='public', yet the sequence gets created under Metadata's schema. 2. I'm trying this optional=True, however all it does is make the Integer back into the Serial, which I'm trying to avoid. On Wednesday, 5 August 2020 14:59:03 UTC+2, Zsolt Ero wrote: > > Hi, > > I've split a table into two tables, for performance reasons. I'd like to > insert into both tables using the same sequence. I'm inserting using > executemany_mode='values'. > > My idea is to call nextval() on the sequence before insert and fill in the > values client side, before inserting. > > select nextval('mysql') FROM generate_series(1,...) > > Everything looks good, except for the default behaviour of SQLAlchemy to > turn an integer + pk column into a SERIAL. > > As an alternative I'm also looking at using Sequence('myseq') from > https://docs.sqlalchemy.org/en/13/dialects/postgresql.html#sequences-serial-identity, > > but this is broken for issuing "CREATE SEQUENCE myseq" before the table > creation, which is missing the IF NOT EXISTS part. > > How can I either: > - turn off the automatic behaviour of making a pg + int = serial? > - add a IF NOT EXISTS to the Sequence()? > > Or any alternative ideas? > -- SQLAlchemy - The Python SQL Toolkit and Object Relational Mapper http://www.sqlalchemy.org/ To post example code, please provide an MCVE: Minimal, Complete, and Verifiable Example. See http://stackoverflow.com/help/mcve for a full description. --- You received this message because you are subscribed to the Google Groups "sqlalchemy" group. To unsubscribe from this group and stop receiving emails from it, send an email to sqlalchemy+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/sqlalchemy/925b2783-cbf3-491f-b4ab-1bda26eae181o%40googlegroups.com.