表至表 (转换)
摘要
将输入表转换为 dBASE 表或地理数据库表。
用法
-
此工具支持以下表格式作为输入:
- dBASE (.dbf)
- 逗号分隔值 (.csv)
- 由制表符分隔的文本 (.txt)
- Microsoft Excel 工作表(.xls 或 .xlsx)
- INFO
- VPF
- OLE 数据库
- 个人、文件或 SDE 地理数据库
- 内存中的表视图
对于文件输入(.csv 或 .txt),输入文件的第一行将用作输出表上的字段名称。字段名称不能包含空格或特殊字符(如 $ 或 *),如果输入文件的第一行包含空格或特殊字符,您将收到一条错误消息。
-
此工具可将输入表转换为 dBASE (.dbf) 表、地理数据库(个人、文件或 SDE)表或 INFO 表。
可使用该工具将 ArcGIS 表导出为 dBASE 表 (.dbf),dBASE 表可以通过 Microsoft Excel 读取和编辑。
-
可通过此工具的“字段映射”控件来控制输出表中所有字段以及字段中的内容。
-
如果输入表是具有选定内容的表视图,则只会将所选行传递到输出表中。
将包含属性域的地理数据库数据转换为 shapefile、dBase 表或 coverage 时,域代码和域描述都将包含在输出中。域描述将位于在域字段之后命名的新字段中,字段名称的末端追加 _DESC。
-
“配置关键字”参数用于指定关系数据库管理系统 (RDBMS) 中的地理数据库的默认存储参数(配置)。此设置仅在使用 SDE 地理数据库表时可用。有关配置关键字的更多信息,请参阅配置关键字。
语法
参数 | 说明 | 数据类型 |
in_rows |
要转换为新表的输入表。 | Table View; Raster Layer |
out_path |
写入输出表的目标位置。 | Workspace |
out_name |
输出表的名称。 如果“输出位置”为文件夹,则可通过指定一个扩展名为 .dbf 的名称,将“输入行”转换为 dBASE 表,也可以通过指定一个不带扩展名的名称,将“输入行”转换为 INFO 表。如果“输出位置”为地理数据库,则可通过指定一个不带扩展名的名称,将“输入行”转换为地理数据库表。 | String |
where_clause (可选) |
用于选择记录子集的 SQL 表达式。表达式的语法会因数据源的不同而稍有不同。例如,如果要查询文件或 ArcSDE 地理数据库、shapefile、coverage、dBASE 或 INFO 表,需将字段名用双引号括起: "MY_FIELD" 如果要查询个人地理数据库,需将字段用方括号括起: [MY_FIELD] 在 Python 中,字符串用成对的单引号或双引号括起。要创建含有引号的字符串(常见于 SQL 表达式中的 WHERE 子句),可以对引号进行转义(使用反斜线)或对字符串使用三重引号。例如,如果所需的 WHERE 子句为 "CITY_NAME" = 'Chicago' 可以将整个字符串用双引号括起,然后如下所示对内部双引号进行转义: " \"CITY_NAME\" = 'Chicago' " 或者可以将整个字符串用单引号括起,然后如下所示对内部单引号进行转义: ' "CITY_NAME" = \'Chicago\' ' 或者不进行转义,而将整个字符串用三重引号括起: """ "CITY_NAME" = 'Chicago' """ 有关 SQL 语法及其在不同数据源中的差异的详细信息,请参阅帮助主题在 ArcGIS 中使用查询表达式的 SQL 参考。 | SQL Expression |
field_mapping (可选) |
从输入表中选择的字段和字段内容。您可添加、重命名或删除输出字段,还可设置诸如数据类型和合并规则等属性。 合并规则用于指定如何将两个或更多个输入字段的值合并为一个输出值。有以下几个合并规则可供使用:
| Field Mappings |
config_keyword (可选) |
指定关系数据库管理系统 (RDBMS) 中的地理数据库的默认存储参数(配置)。此设置仅在使用 SDE 地理数据库表时可用。 ArcSDE 配置关键字由数据库管理员进行设置。 | String |
代码示例
以下 Python 窗口脚本演示了如何在即时模式下使用 TableToTable 工具。
import arcpy from arcpy import env env.workspace = "C:/data" arcpy.TableToTable_conversion("vegtable.dbf", "C:/output/output.gdb", "vegtable")
以下独立脚本演示了如何使用 TableToTable 工具。
# Name: TableToTable_Example2.py # Description: Use TableToTable with an expression to create a subset # of the original table. # Author: ESRI # Import system modules import arcpy from arcpy import env # Set environment settings env.workspace = "C:/data" # Set local variables inTable = "vegtable.dbf" outLocation = "C:/output/output.gdb" outTable = "estuarine" # Set the expression, with help from the AddFieldDelimiters function to select the appropriate field delimiters for the data type expression = arcpy.AddFieldDelimiters(env.workspace, "VEG_TYPE") + " = 'Estuarine'" # Execute TableToTable arcpy.TableToTable_conversion(inTable, outLocation, outTable, expression)