Advertisement
Guest User

Untitled

a guest
Dec 10th, 2016
237
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.36 KB | None | 0 0
  1. import sqlalchemy, sqlanydb
  2. from sqlalchemy import create_engine, Table, Column, Integer, Unicode, MetaData, String, Text, update, and_, select, func, types
  3. from sqlalchemy.ext.declarative import declarative_base
  4. from sqlalchemy.orm import sessionmaker
  5.  
  6. def connect():
  7. return sqlanydb.connect(DSN='<your DNS>', userid='<username>', password='<password>')
  8.  
  9. srcEngine = sqlalchemy.create_engine('sqlalchemy_sqlany://', creator=connect, echo=True) # pip install sqlalchemy-sqlany
  10.  
  11. # create a configured "Session" class
  12. Session = sessionmaker(bind=srcEngine)
  13.  
  14. # create a Session
  15. session = Session()
  16.  
  17. # create engine, reflect existing columns, and create table object for oldTable
  18. srcEngine._metadata = MetaData(bind=srcEngine)
  19.  
  20. Base = declarative_base()
  21. class srcTable(Base):
  22. __table__ = Table('srcTable', srcEngine._metadata, Column('id', Integer, primary_key=True), autoload=True) # srcTable did not have primary key, you need to declare your own primary key (must be a column in the table)
  23.  
  24. # create engine and table object for newTable
  25. destEngine = create_engine('mysql+mysqldb://user:pass@1.1.1.1/newDB?charset=utf8', echo=True)
  26. destEngine._metadata = MetaData(bind=destEngine)
  27. destTable = Table('newTable', destEngine._metadata)
  28.  
  29. # copy schema and create newTable from oldTable
  30. for column in srcTable.__table__.columns:
  31. destTable.append_column(column.copy())
  32. destTable.create()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement