ArcGIS Desktop

  • ArcGIS Pro
  • ArcMap

  • My Profile
  • 帮助
  • Sign Out
ArcGIS Desktop

ArcGIS Online

专为贵组织打造的制图平台

ArcGIS Desktop

全面的专业性 GIS

ArcGIS Enterprise

面向企业的 GIS

ArcGIS Developers

用于构建位置感知应用程序的工具

ArcGIS Solutions

适用于行业的免费模板地图和应用程序

ArcGIS Marketplace

获取适用于组织的应用程序和数据

  • 文档
  • 支持
Esri
  • 登录
user
  • 我的个人资料
  • 登出

ArcMap

  • 主页
  • 入门
  • 地图
  • 分析
  • 管理数据
  • 工具
  • 扩展模块

TableView

  • 描述
  • 讨论
  • 语法
  • 属性
  • 方法概述
  • 方法
  • 代码示例

描述

用于访问基本表属性。

讨论

TableView 对象对于管理地图文档 (.mxd) 中的独立表至关重要。它用于访问基本表属性(如数据源信息等)以及设置表的定义查询。除了 TableView 构造函数,ListTableViews 函数也能够引用 TableView 对象。

TableView 构造函数用于在工作空间内引用地图文档外的表。它能够使用 AddTableView 函数将外部表添加到地图文档中。此函数与 MakeTableView 相似,区别在于 MakeTableView 的结果不能永久添加到地图文档中。

ListTableViews 函数返回 TableView 对象的 Python 列表。随后,必须遍历列表中的每个项目,或指定一个索引号以引用具体的 TableView 对象。可在整个地图文档或特定数据框内搜索表。通配符还可用于限制搜索。

定义查询不适用于所有工作空间。使用不同工作空间时,应用正确的 SQL 语法非常重要。例如,文件地理数据库和 shapefile 的文件名都用双引号括起(例如,"文件名"),个人地理数据库的文件名都用方括号括起(例如,[文件名]),而 SDE 连接的文件名没有任何特殊字符(例如,文件名)。有关在地图文档或图层文件中更新工作空间和数据源的详细信息,请参阅使用 arcpy.mapping 更新和修复数据源帮助主题。

可以使用 RemoveTableView 函数从地图文档中移除表。

语法

 TableView (table_view_data_source)
参数说明数据类型
table_view_data_source

一个包含完整工作空间路径的字符串,其中包括表名称。

String

属性

属性说明数据类型
datasetName
(只读)

以表数据集在工作空间(非内容列表)中显示的方式返回其名称。

String
dataSource
(只读)

返回表的数据源路径。此属性包含 workspacePath 和 datasetName 的组合。

String
definitionQuery
(可读写)

用于获得或设置表的定义查询。

String
name
(可读写)

用来以表在 ArcMap 内容列表中显示的方式设置或获得表名称。可包含空格。

String
isBroken
(只读)

如果表的数据源损坏,则返回 True。

Boolean
workspacePath
(只读)

返回表的工作空间或连接文件的路径。

String

方法概述

方法说明
findAndReplaceWorkspacePath (find_workspace_path, replace_workspace_path, {validate})

使用新工作空间路径替换表的工作空间

getSelectionSet ()

以 Python 对象 ID 集的形式返回表选择。

replaceDataSource (workspace_path, workspace_type, {dataset_name}, {validate})

替换地图文档 (.mxd) 中表的数据源,同时提供切换工作空间类型的功能(例如用 SDE 工作空间替换文件地理数据库工作空间)。

setSelectionSet (method, oidList)

使用 Python 对象 ID 集设置表选择。

方法

findAndReplaceWorkspacePath (find_workspace_path, replace_workspace_path, {validate})
参数说明数据类型
find_workspace_path

用于表示要查找的工作空间路径或连接文件的字符串。如果传递了空字符串,则将根据 validate 参数的值将所有工作空间路径替换为 replace_workspace_path 参数。

String
replace_workspace_path

表示要用于替换的工作空间路径或连接文件的字符串。

String
validate

如果设置为 True,则仅在 replace_workspace_path 值为有效工作空间时,才会更新工作空间。如果为无效工作空间,则不会替换该工作空间。如果设置为 False,则无论匹配是否有效,此方法都会将工作空间设置为匹配 replace_workspace_path。在这种情况下,如果匹配不存在,则将损坏表的数据源。

(默认值为 True)

Boolean

有关详细说明、参数信息、案例和编码示例,请参阅更新和修复数据源帮助主题。

getSelectionSet ()

返回值

数据类型说明
List

以 Python 对象 ID 集的形式返回表选择。

提供检索表当前选择的简便方式。

replaceDataSource (workspace_path, workspace_type, {dataset_name}, {validate})
参数说明数据类型
workspace_path

包含新数据或连接文件的工作空间路径的字符串。

String
workspace_type

用于表示新数据的工作空间类型的字符串关键字。

  • ACCESS_WORKSPACE — 个人地理数据库或 Access 工作空间
  • ARCINFO_WORKSPACE — ArcInfo coverage 工作空间
  • CAD_WORKSPACE —CAD 文件工作空间
  • EXCEL_WORKSPACE —Excel 文件工作空间
  • FILEGDB_WORKSPACE —文件地理数据库工作空间
  • NONE —用于跳过参数
  • OLEDB_WORKSPACE —OLE 数据库工作空间
  • PCCOVERAGE_WORKSPACE —PC ARC/INFO Coverage 工作空间
  • RASTER_WORKSPACE —栅格工作空间
  • SDE_WORKSPACE —SDE 地理数据库工作空间
  • SHAPEFILE_WORKSPACE —shapefile 工作空间
  • TEXT_WORKSPACE —文本文件工作空间
  • TIN_WORKSPACE —TIN 工作空间
  • VPF_WORKSPACE —VPF 工作空间
String
dataset_name

用于表示表格在新工作空间中显示的名称(而非内容列表中的表格名称)的字符串。如果未提供 dataset_name,则 replaceDataSource 方法将尝试通过查找与图层的当前数据集属性具有相同名称的表来替换数据集。

String
validate

如果设置为 True,则仅在 workspace_path 值为有效工作空间时,才会更新工作空间。如果为无效工作空间,则不会替换该工作空间。如果设置为 False,则无论匹配是否有效,此方法都会将所有连接设置为匹配 workspace_path。在这种情况下,如果匹配不存在,则将损坏数据源。

(默认值为 True)

Boolean

有关详细说明、参数信息、案例和编码示例,请参阅更新和修复数据源帮助主题。

setSelectionSet (method, oidList)
参数说明数据类型
method

用于指定要使用的选择方法的字符串。

  • NEW —从 oidList 创建一个新的记录选择。
  • DIFFERENCE —选择不在当前选择中但在 oidList 中的记录。
  • INTERSECT —选择当前选择和 oidList 中均含有的记录。
  • SYMDIFFERENCE —选择当前选择或 oidList 中不包含的记录。
  • UNION —选择当前选择和 oidList 中的全部记录。

(默认值为 None)

String
oidList

与适当的选择方法一起使用的 Python 对象 ID 集。

Integer

此方法提供管理表选择的简便方式。要清空选择,请使用包含空集的 NEW 选择方法。Python 集或列表可用于 oidList,但会针对 Table 对象使用 getSelectionSet 方法返回集。

代码示例

TableView 示例 1

以下脚本将在名为 Transportation 的数据框中查找名为 Customers 的表并设置此表的定义查询。

import arcpy
mxd = arcpy.mapping.MapDocument(r"C:\Project\Project.mxd")
df = arcpy.mapping.ListDataFrames(mxd, "Transportation")[0]
for table in arcpy.mapping.ListTableViews(mxd, "", df):
    if table.name.lower() == "trafficaccidents":
        table.definitionQuery = "\"age\" >= 18"
mxd.save()
del mxd
TableView 示例 2

以下脚本引用文件地理数据库中的表并将此表添加到引用的地图文档中。

import arcpy
mxd = arcpy.mapping.MapDocument(r"C:\Project\Project.mxd")
df = arcpy.mapping.ListDataFrames(mxd, "Transportation")[0]
accidentsTable = arcpy.mapping.TableView(r"C:\Project\Data\Transportation.gdb\Accidents")
arcpy.mapping.AddTableView(df, accidentsTable)
mxd.saveACopy(r"C:\Project\Project2.mxd")
del mxd, accidentsTable

ArcGIS Desktop

  • 主页
  • 文档
  • 支持

ArcGIS

  • ArcGIS Online
  • ArcGIS Desktop
  • ArcGIS Enterprise
  • ArcGIS
  • ArcGIS Developer
  • ArcGIS Solutions
  • ArcGIS Marketplace

关于 Esri

  • 关于我们
  • 招贤纳士
  • Esri 博客
  • 用户大会
  • 开发者峰会
Esri
分享您的想法。
Copyright © 2021 Esri. | 隐私政策 | 法律声明