表至表 (转换)

摘要

可将表的行导出到不同表中。

旧版本:

此工具已弃用。 此功能已由导出表工具替代。

使用情况

  • 该工具可将表、表视图、要素类、要素图层、带分隔符的文件或者具有属性表的栅格的行复制到新的地理数据库、dBASE 表或带分隔符的文件。

  • 此工具支持以下表格式作为输入:

    • 地理数据库
    • dBASE (.dbf)
    • Microsoft Excel 工作表(.xls.xlsx
    • 基于内存的表
    • 分隔文件
      • 逗号分隔的文件(.csv.txt.asc
      • 制表符分隔的文件(.tsv.tab
      • 竖线分隔的文件 (.psv)

    对于带分隔符的文件,输入文件的第一行将用作输出表上的字段名称。 字段名称不能包含空格或特殊字符(如 $ 或 *),如果输入文件的第一行包含空格或特殊字符,则将出错。

  • 如果输出位置参数值不为地理数据库,则不会包含 BLOB 或栅格字段。 GlobalID 字段将转换为文本字段。

  • 通过将以下文件扩展名之一添加到文件夹工作空间中的输出名称,该工具可用于输出带分隔符的文件

    • 逗号分隔的文件(.csv.txt.asc
    • 制表符分隔的文件(.tsv.tab
    • 竖线分隔的文件 (.psv)

  • 使用字段映射参数管理输出数据集中的字段及其内容。

    • 您可以向字段列表中添加和移除字段,重新排序字段列表,并重命名字段。
    • 输出字段的默认数据类型与其所遇到的第一个名称相同的输入字段的数据类型相同。 可以将数据类型更改为其他有效的数据类型。
    • 使用操作确定如何将一个或多个输入字段的值合并到单个输出字段中。 可用的操作包括第一个最后一个串连求和平均值中位数众数最小值最大值标准差计数
    • 当使用串连操作时,可以指定分隔符,例如逗号或其他字符。 单击分隔符文本框的开始部分以添加分隔符。
    • 单个输入值不支持标准差选项。
    • 对于文本源字段,使用分割文本按钮,可以选择从输入值中提取到输出字段的字符。 要访问分割文本按钮,需将鼠标悬停在输入字段列表中的文本字段上,然后指定起始和结束字符位置。
    • 还可以使用 Python 脚本映射字段。

  • 将包含子类型或域的地理数据库数据转换为 dBASE 表时,子类型和域代码以及描述都将包含在输出中。 可以使用传输字段域描述地理处理环境来执行此操作。 默认情况下,只有属性域和子类型代码才会被包含在输出中,描述不会被包含在输出中。

    注:

    转换为包含子类型和属性域描述的 dBASE 表比转换为不包含描述的表可能需要更多时间(降低性能)。 如果 dBASE 表输出中不需要子类型和属性域描述,请取消选中“传输字段属性域描述”环境以获得最佳性能。

参数

标注说明数据类型
输入行

将导出到新表格的输入表。

Table View; Raster Layer
输出位置

将写入输出表的目标位置。

Workspace
输出名称

输出表的名称。

如果输出位置为文件夹,则需要包含扩展名,例如 .csv.txt.dbf,以将表格导出为该格式。 如果输出位置为地理数据库,则无需指定扩展名。

String
表达式
(可选)

用于选择记录子集的 SQL 表达式。

SQL Expression
字段映射
(可选)

将字段及其各自属性和源字段传输到输出数据集中。 默认情况下,输出包括来自输入数据集的所有字段。

使用字段映射来添加、删除、重命名和重新排序字段,以及更改其他字段属性。

字段映射还可以用于将两个或多个输入字段的值合并为单个输出字段。

Field Mappings
配置关键字
(可选)

指定关系数据库管理系统 (RDBMS) 中的地理数据库的默认存储参数(配置)。此设置仅在使用企业级地理数据库表时可用。

配置关键字由数据库管理员进行设置。

String

派生输出

标注说明数据类型
输出表

输出表。

Table

arcpy.conversion.TableToTable(in_rows, out_path, out_name, {where_clause}, {field_mapping}, {config_keyword})
名称说明数据类型
in_rows

将导出到新表格的输入表。

Table View; Raster Layer
out_path

将写入输出表的目标位置。

Workspace
out_name

输出表的名称。

如果输出位置为文件夹,则需要包含扩展名,例如 .csv.txt.dbf,以将表格导出为该格式。 如果输出位置为地理数据库,则无需指定扩展名。

String
where_clause
(可选)

用于选择记录子集的 SQL 表达式。

SQL Expression
field_mapping
(可选)

将字段及其各自属性和源字段传输到输出数据集中。 默认情况下,输出包括来自输入数据集的所有字段。

使用字段映射来添加、删除、重命名和重新排序字段,以及更改其他字段属性。

字段映射还可以用于将两个或多个输入字段的值合并为单个输出字段。

Python 中,使用 FieldMappings 类来定义此参数。

Field Mappings
config_keyword
(可选)

指定关系数据库管理系统 (RDBMS) 中的地理数据库的默认存储参数(配置)。此设置仅在使用企业级地理数据库表时可用。

配置关键字由数据库管理员进行设置。

String

派生输出

名称说明数据类型
out_table

输出表。

Table

代码示例

表至表 (TableToTable) 示例 1(Python 窗口)

以下 Python 窗口脚本演示了如何在即时模式下使用 TableToTable 函数。

import arcpy
arcpy.env.workspace = "C:/data"
arcpy.conversion.TableToTable("vegtable.dbf", "C:/output/output.gdb", "vegtable")
TableToTable 示例 2(独立脚本)

以下独立脚本演示了如何使用 TableToTable 函数。

# Description: Use TableToTable with an expression to create a subset
#  of the original table.
 
# Import system modules
import arcpy
 
# Set environment settings
arcpy.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(arcpy.env.workspace, "VEG_TYPE") + " = 'Estuarine'"
 
# Run TableToTable
arcpy.conversion.TableToTable(inTable, outLocation, outTable, expression)