行のコピー(Copy Rows) (Data Management)
サマリ
入力テーブル、テーブル ビュー、フィーチャクラス、またはフィーチャ レイヤの行を新しいテーブルに書き出します。選択が ArcMap のフィーチャクラスまたはフィーチャ レイヤで定義されている場合は、選択された行のみがコピーされます。
使用法
-
入力がフィーチャクラスまたはテーブルの場合、すべての行がコピーされます。入力行がレイヤまたはテーブル ビューからのもので、対象範囲の選択が可能な場合は、選択したフィーチャまたは行だけが使用されます。
-
入力行がフィーチャクラスである場合は、属性のみ(ジオメトリを含まない)が出力テーブルにコピーされます。
-
このツールは入力として次のテーブル形式をサポートします。
- dBASE(*.dbf)
- カンマ区切り値(*.csv)
- タブ区切りテキスト(*.txt)
- Microsoft Excel ワークシート(*.xls または *.xlsx)
- INFO
- VPF
- OLE データベース
- パーソナル、ファイル、または SDE ジオデータベース
- メモリ内テーブル ビュー
ファイル入力(*.csv または *.txt)の場合は、入力ファイルの 1 行目が出力テーブルのフィールド名として使用されます。フィールド名には空白または特殊文字($、* など)を使用できません。入力ファイルの 1 行目に空白または特殊文字が含まれている場合は、エラーが表示されます。
-
コピーされた行を既存のテーブルに追加またはアペンドするには、[アペンド(Append)] ツールを使用します。
-
出力テーブルは dBASE、ArcSDE ジオデータベース、ファイル ジオデータベース、またはパーソナル ジオデータベースに保存できます。
構文
パラメータ | 説明 | データ タイプ |
in_rows |
コピー元のフィーチャクラス、レイヤ、テーブルまたはテーブル ビューからの行。 | Table View ; Raster Layer |
out_table |
行が書き込まれるテーブル。出力テーブルがすでに存在し、ジオプロセシング オプションの[ジオプロセシング処理の出力ファイルを上書き] がオンになっている場合は、出力が上書きされます。ツール ダイアログ ボックスから上書きを防ぐには、[ジオプロセシング処理の出力ファイルを上書き] オプションをオフにしてください。 行が書き込まれるテーブル。すでに存在している出力テーブルは、上書きされます。スクリプトで上書きを防ぐには、ジオプロセッサ オブジェクトの OverwriteOutput プロパティを false または 0 に設定してください。 | Table |
config_keyword (オプション) |
config キーワードには、ArcSDE ジオデータベース用のデフォルトのストレージ パラメータを指定します。 | String |
コードのサンプル
次の Python ウィンドウ スクリプトは、フィーチャのコピー関数をイミディエイト モードで使用する方法を、例を挙げて示したものです。
import arcpy from arcpy import env env.workspace = "C:/data" arcpy.CopyRows_management("vegtable.dbf", "C:/output/output.gdb/vegtable")
次のスタンドアロン スクリプトは、CopyRows(行のコピー)を使用してフォルダ内のテーブルをファイル ジオデータベースにコピーする方法を示しています。
# Name: CopyRows_Example2.py # Description: Convert all dBASE tables in a folder to geodatabase tables # Requirement: os module # Author: ESRI # Import system modules import arcpy from arcpy import env import os # Set environment settings env.workspace = "C:/data" # Set local variables outWorkspace = "c:/output/output.gdb" # Use ListTables to generate a list of dBASE tables in the # workspace shown above. tableList = arcpy.ListTables() # Execute CopyRows for each input table for dbaseTable in tableList: # Determine the new output feature class path and name outTable = os.path.join(outWorkspace, dbaseTable.strip(".dbf")) arcpy.CopyRows_management(dbaseTable, outTable)