Copy (Data Management)

Summary

Makes a copy of the input data.

Usage

  • If a feature class is copied to a feature dataset, the spatial reference of the feature class and the feature dataset must match; otherwise, the tool will fail.

  • Any data that is dependent on the input is also copied. For example, copying a feature class or table that is part of a relationship class also copies the relationship class. This also applies to a feature class that has feature-linked annotation, domains, subtypes, and indices—all are copied along with the feature class. Copying geometric networks, network datasets, and topologies also copies the participating feature classes.

  • This tool does not copy layers, since a layer is only a reference to a feature class.

  • Copying a mosaic dataset copies the mosaic dataset to the designated location; the images referenced by the mosaic dataset are not copied.

  • This tool does not support copying a network dataset back into the same geodatabase.

  • This tool does not support the MRF image format. To copy an .mrf file, use the Copy Raster tool.

  • When the input has associated data, the Associated Data parameter value is displayed where the associated output data's name and config keyword can be controlled.

Parameters

LabelExplanationData Type
Input Data

The data to be copied.

Data Element
Output Data

The location and name of the output data.

Data Element
Data type
(Optional)

The type of the data on disk to be copied.

This parameter will be used in the event of a name conflict. A geodatabase may contain different datasets with the same name, for example, a feature class, feature dataset, mosaic dataset, and parcel fabric with the same name may exist in the same geodatabase. Specifying a value will direct the tool to use that data type in the event of two or more datasets with the same name.

  • FeatureClass—In the event of duplicate names, the feature class will be used.
  • FeatureDataset—In the event of duplicate names, the feature dataset will be used.
  • MosaicDataset—In the event of duplicate names, the mosaic dataset will be used.
  • ParcelFabric—In the event of duplicate names, the parcel fabric will be used.
String
Associated Data
(Optional)

When the input has associated data, this parameter can be used to control the associated output data's name and config keyword.

  • From Name—The data associated with the input data, which will also be copied.
  • Data Type—The type of the data on disk to be copied. The only time you need to provide a value is when a geodatabase contains a feature dataset and a feature class with the same name. In this case, select the correct data type, FeatureDataset or FeatureClass, of the item you want to copy.
  • To Name—The name of the copied data in the Output Data parameter value.
  • Config Keyword—The geodatabase storage parameters (configuration).

The From Name and To Name column names will be identical if the To Name value is not already used in Output Data. If a name already exists in the Output Data value, a unique To Name value will be created by appending an underscore plus a number (for example, rivers_1).

Value Table

arcpy.management.Copy(in_data, out_data, {data_type}, {associated_data})
NameExplanationData Type
in_data

The data to be copied.

Data Element
out_data

The location and name of the output data. The file name extension of the output data must match the extension of the input data. For example, if you are copying a file geodatabase, the output data element must have .gdb as a suffix.

Data Element
data_type
(Optional)

The type of the data on disk to be copied.

This parameter will be used in the event of a name conflict. A geodatabase may contain different datasets with the same name, for example, a feature class, feature dataset, mosaic dataset, and parcel fabric with the same name may exist in the same geodatabase. Specifying a value will direct the tool to use that data type in the event of two or more datasets with the same name.

  • FeatureClass—In the event of duplicate names, the feature class will be used.
  • FeatureDataset—In the event of duplicate names, the feature dataset will be used.
  • MosaicDataset—In the event of duplicate names, the mosaic dataset will be used.
  • ParcelFabric—In the event of duplicate names, the parcel fabric will be used.
String
associated_data
[[from_name, data_type, to_name, config_keyword],...]
(Optional)

When the input has associated data, this parameter can be used to control the associated output data's name and config keyword.

  • from_name—The data associated with the input data, which will also be copied.
  • data_type—The type of the data on disk to be copied. The only time you need to provide a value is when a geodatabase contains a feature dataset and a feature class with the same name. In this case, use the correct data type, FeatureDataset or FeatureClass, of the item you want to copy.
  • to_name—The name of the copied data in the out_data parameter value.
  • config_keyword—The geodatabase storage parameters (configuration).

The from_name and to_name column names will be identical if the to_name value is not already used in out_data. If a name already exists in the out_data value, a unique to_name value will be created by appending an underscore plus a number (for example, rivers_1).

Value Table

Code sample

Copy example 1 (Python window)

The following Python window script demonstrates how to use the Copy function in immediate mode.


import arcpy
arcpy.env.workspace = "C:/data"
arcpy.management.Copy("majorrds.shp", "C:/output/majorrdsCopy.shp")
Copy example 2 (stand-alone script)

The following Python script demonstrates how to use the Copy function in a stand-alone script:

# Name: Copy_Example2.py
# Description: Copy major roads dataset to preserve the original data

# Import system modules
import arcpy

# Set workspace
arcpy.env.workspace = "C:/data"

# Set local variables
in_data =  "majorrds.shp"
out_data = "C:/output/majorrdsCopy.shp"

# Run Copy
arcpy.management.Copy(in_data, out_data)
Copy example 3 (stand-alone script)

The following Python script demonstrates how to use the associated_data parameter on the Copy function:

# Name: Copy_Example3.py
# Description: Copy a feature dataset and specify associated_data

# Import system modules
import arcpy

# The input is a feature dataset containing 3 feature classes: lakes, cities, rivers
in_data =  "C:/data/proj.gdb/mexico" 
out_data = "C:/data/proj.sde/mexico"

associated_data = ";".join(["lakes FeatureClass mexico_lakes #",
                            "cities FeatureClass mexico_cities #",
                            "rivers FeatureClass mexico_rivers #"])

# Rename each feature class during the copy operation using the associated_data parameter
arcpy.management.Copy(in_data, out_data, associated_data=associated_data)