Data can be copied between two on-premise or two cloud databases, between an on-premise or a cloud database and a transportable database, or between two transportable databases.
A non-current database can be opened as a guest database to copy data between two on-premise databases on the same machine or network, or two cloud databases on the same hub, or between an on-premise database and a cloud one.
A transportable database may be used for transferring data:
- Between on-premise databases in an organisation.
- Between cloud databases in an organisation.
- Between on-premise databases and cloud databases in an organisation.
- Between cloud databases and on-premise databases in an organisation.
- When sending data to Innovyze as part of a support request.
The table below illustrates the copy options between the different types of databases.
Copy from | Copy to | ||||||
Cloud | On-premise
Workgroup Standard |
On-premise
Workgroup Oracle |
On-premise
SQL server |
On-premise
Standalone |
Transportable with on-premise data |
Transportable with cloud data |
|
Cloud | YES | NO | NO | NO | NO | YES | YES |
On-premise
Workgroup Standard |
YES | YES | YES | YES | YES | YES | YES |
On-premise
Workgroup Oracle |
NO | YES | YES | YES | YES | YES | NO |
On-premise
SQL server |
NO | YES | YES | YES | YES | YES | NO |
On-premise
Standalone |
YES | YES | YES | YES | YES | YES | YES |
Transportable with on-premise data |
YES | YES | YES | YES | YES | YES | YES |
Transportable with cloud data |
YES | YES | NO | NO | YES | YES | YES |
Copy and paste
Objects are copied and pasted between databases in the same way as within a database. You can paste data copied from an older version of a database into a newer version but you cannot paste data copied from a newer version of a database into an older version, unless you update the older version to the same version as the newer database.
Copying and pasting is recursive. When an object is copied, all descendants of the object are copied with it. For example, if you copy a group, all items and groups contained in the parent group will also be copied.
To copy data between databases:
- Select Open
Open/Create database from the File menu. The Open/create dialog is displayed.
- Select which type of database you want to open. The relevant Open Database dialog is displayed.
- Open the applicable database.
- Select New Explorer window from the Window menu to display an Explorer window of the database.
- Open another
on-premise or
cloud
database or a transportable database that you want to copy:
- To open another
on-premise or
cloud
database, select Open
Open another database from the File menu. The Open/create dialog is displayed.
- Select which type of database you want to open.
- The relevant Open Database dialog is displayed.
- Open the relevant database. (Multiple guest databases may be opened.)
- To open a
transportable database, select Open
Open transportable database from the File menu and choose the relevant database. (Multiple transportable databases may be opened.)
- To open another
on-premise or
cloud
database, select Open
- In the Explorer view for the database, right-click on the top level of data you want to copy. For example, you can choose a whole model group or any item in a model group (such as a network or a Selection List group).
- Select Copy from the popup menu.
- In the Explorer view for the database to be copied to, right-click on the item that is to contain the copied data and select Paste from the popup menu.
Network data and supported cloud database items can be pasted from a database containing on-premise data to a cloud database. Any database items that are not available in cloud databases will not be pasted even if they were included in the copied on-premise data. Also, simulation results for any run pasted from a database containing on-premise data will not be available in a cloud database. In such cases, a Results unavailable icon (
) will be displayed the Explorer view.
InfoWorks ICM will copy all items of data at or below the selected level.
This process can be repeated as often as is necessary, so that any combination of data items are copied to the database.
Copy duplicate objects
All objects in an InfoWorks ICM on-premise/cloud database (or transportable) are identified by a globally unique database identifier.
InfoWorks ICM checks if objects being copied to a database already exist in the database. If there are duplicate objects, the Copying Of Duplicate Items dialog will be displayed:
- Click OK to continue to paste the objects. Items that already exist in the database will be duplicated there. The duplicate items have an exclamation mark (!) appended to the item name to create a unique name from the old name. A new unique identifier is also generated.
- Click Cancel, and no data will be copied (regardless of whether it is duplicate or not).
Objects are not overwritten.
Copy runs and simulation results, ground models and time series databases from on-premise databases
When simulation results, ground models and/or time series databases (TSDB) are copied from an on-premise database, the Copying of Simulation Results, Ground Models and Time Series Databases dialog is displayed. This lists the simulation results, ground models and time series databases that have been selected for copying. This dialog gives you the choice to include or exclude certain data types from the copy process. The ability to leave any of this data out of the copy operation is quite useful as some of it is potentially very large:
- Check Copy Simulation Results if you want to copy simulation results.
- Check Copy Ground Models if you want to copy ground model data.
- Check No (only available when no simulation is present in the item to be copied), Yes - all data or Yes - only data referenced by copied simulations as required to copy time series database data.
- Click Continue to copy the selected data. Any model data required to reproduce the run will always be copied (see note below).
- Click Cancel to abandon the entire copy process.
Important note about runs and simulations in on-premise databases
If runs or simulation results are copied between databases, any associated data needed to reproduce the run will also be copied as long as you follow the correct procedure.
If you paste the run into a Run Group in the destination database then:
- If the associated data (for example the network) has previously been copied into the destination database, InfoWorks ICM will restore the relationships between the run and this data.
- If the associated data is copied after the run, relationships will not be restored.
The recommended practice is to organise your data sensibly in model groups and then to copy entire model groups between databases.
Important note about runs and simulations in cloud databases
If runs are copied from a cloud database, any associated data needed to reproduce the run will also be copied as long as you follow the correct procedure.
If you paste the run into a Run Group in the destination database then:
- If the associated data (for example the network) has previously been copied into the destination database, InfoWorks ICM will restore the relationships between the run and this data.
- If the associated data is copied after the run, relationships will not be restored.
The recommended practice is to organise your data sensibly in model groups and then to copy entire model groups between databases.
Simulation results for any
Run included in a copied
cloud database will not be pasted into
InfoWorks ICM. However, the simulation status icon for results unavailable () will be displayed under applicable runs in the
Explorer Window when the Run is pasted into the destination database in
InfoWorks ICM. If you want to view the result for such a simulation, you will need to
re-run it in
InfoWorks ICM.
Copy workspaces
When you copy a workspace between databases, InfoWorks ICM will automatically copy all the underlying data required to recreate that workspace in the new database. You do not need to select this data yourself. This extremely powerful feature enables you to transfer complete projects easily and simply between databases.