Right!, thanks for that.
On Monday, August 10, 2015 at 2:15:40 PM UTC-7, Michael Bayer wrote: > > > > On 8/10/15 4:14 PM, Luis Guzman wrote: > > Right, this is possible. > > In my newbie status I did not know you can post-bind the metadata to a > different engine. > > A_metadata.bind = B_engine > > And then: > > A_metadata.create_all() does the magic. > > > please just pass the Engine object to create_all() directly and don't > confuse things by modifying the MetaData object in place: > > metadata.create_all(any_engine) > > > > > > > > On Friday, August 7, 2015 at 4:43:07 PM UTC-7, Luis Guzman wrote: >> >> Hi, >> >> Is it possible to reflect from one engine and then use some of the tables >> reflected as base to create tables in a second, different engine? >> >> A possible way: >> >> A_engine = create_engine("postgresql+psycopg2://...A...) >> B_engine = create_engine("postgresql+psycopg2://...B...) >> >> A_metadata = MetaData(schema='A', bind=A_engine) >> B_metadata = MetaData(schema='B', bind=B_engine) >> >> A_metadata.reflect(bind=A_engine) >> A_table = A_metadata.tables['A_table'] >> >> A_table.metadata = B_metadata >> A_table.schema = 'B' >> >> But now, I'm not sure how to tell A_metadata that it has a A_table to >> care for. >> >> I've tried also with similar success using the 'autoload' and with the >> 'automap_base', instead of reflect. >> >> Any ideas? is this too hacky/crazy/stupid? If not, it is a better way I >> haven't found? >> >> The use case is that I'd like to reflect what are the tables from >> production database, and use them as 'templates' to create a new database >> for testing. >> That is, I want to be able to create in my test database with the actual >> reflection of what it is in production, and use SQLAlchemy to control the >> creation of fake data in it. >> >> Thanks in advance! >> >> Luis >> >> >> -- > 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+...@googlegroups.com <javascript:>. > To post to this group, send email to sqlal...@googlegroups.com > <javascript:>. > Visit this group at http://groups.google.com/group/sqlalchemy. > For more options, visit https://groups.google.com/d/optout. > > > -- 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 post to this group, send email to sqlalchemy@googlegroups.com. Visit this group at http://groups.google.com/group/sqlalchemy. For more options, visit https://groups.google.com/d/optout.