Skip to content

Instantly share code, notes, and snippets.

@iamnimnul
Forked from pawl/copy_table.py
Created August 28, 2020 13:59
Show Gist options
  • Save iamnimnul/b6ea51051d907c10c84d7e33942a7e3c to your computer and use it in GitHub Desktop.
Save iamnimnul/b6ea51051d907c10c84d7e33942a7e3c to your computer and use it in GitHub Desktop.

Revisions

  1. @pawl pawl revised this gist Apr 28, 2014. 1 changed file with 2 additions and 2 deletions.
    4 changes: 2 additions & 2 deletions copy_table.py
    Original file line number Diff line number Diff line change
    @@ -4,14 +4,14 @@
    srcEngine = create_engine('mysql+mysqldb://username:[email protected]/database') # change this for your source database
    srcEngine._metadata = MetaData(bind=srcEngine)
    srcEngine._metadata.reflect(srcEngine) # get columns from existing table
    RfContinuusProject = Table('oldTable', srcEngine._metadata)
    srcTable = Table('oldTable', srcEngine._metadata)

    # create engine and table object for newTable
    destEngine = create_engine('mysql+mysqldb://username:password@localhost/database') # change this for your destination database
    destEngine._metadata = MetaData(bind=destEngine)
    destTable = Table('newTable', destEngine._metadata)

    # copy schema and create newTable from oldTable
    for column in RfContinuusProject.columns:
    for column in srcTable.columns:
    destTable.append_column(column.copy())
    destTable.create()
  2. @pawl pawl renamed this gist Apr 2, 2014. 1 changed file with 0 additions and 0 deletions.
    File renamed without changes.
  3. @pawl pawl created this gist Apr 2, 2014.
    17 changes: 17 additions & 0 deletions gistfile1.txt
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,17 @@
    from sqlalchemy import create_engine, Table, Column, Integer, Unicode, MetaData, String, Text, update, and_, select, func, types

    # create engine, reflect existing columns, and create table object for oldTable
    srcEngine = create_engine('mysql+mysqldb://username:[email protected]/database') # change this for your source database
    srcEngine._metadata = MetaData(bind=srcEngine)
    srcEngine._metadata.reflect(srcEngine) # get columns from existing table
    RfContinuusProject = Table('oldTable', srcEngine._metadata)

    # create engine and table object for newTable
    destEngine = create_engine('mysql+mysqldb://username:password@localhost/database') # change this for your destination database
    destEngine._metadata = MetaData(bind=destEngine)
    destTable = Table('newTable', destEngine._metadata)

    # copy schema and create newTable from oldTable
    for column in RfContinuusProject.columns:
    destTable.append_column(column.copy())
    destTable.create()