表转 SAS (转换)

摘要

将表转换为 SAS 数据集。

使用情况

  • 此工具支持与本地计算机上安装的 SAS 桌面版的连接或与 SAS Cloud Analytic Services (CAS) 的连接。 如果您正在使用 CAS,则记录的顺序可能会在转换过程中发生变化。

  • 必须使用自定义会话配置文件参数进行 SAS 的远程部署,例如 Workspace Server、UNIX 和 Mainframe。 如果 SASArcGIS Pro 安装在同一台计算机上,则不需要配置文件。

    了解有关 SAS 会话配置的详细信息

  • 以表单 libref.tablename 形式提供 SAS 数据集,其中 librefSASCAS 库的名称,tablenameSAS 数据集的名称。 例如,SASUSER.MYTABLE 引用了 SASUSER 库中名为 MYTABLESAS 数据集。

  • SAS 库、数据集名称和列名称不区分大小写。 例如,SASUSER.MYTABLE 的处理方式与 sasuser.mytableSASUser.MyTable 相同。

  • 可以转换的记录数取决于计算机的可用内存。

  • 对于本地 SAS 部署,默认情况下可以使用 SASUSERSASHELPMAPSMAPSSASMAPSGFK 库。 要使用自定义库,必须在 SAS Autoexec 文件中定义 libref。

    了解有关 Autoexec 配置的详细信息

  • WORK 库是一个临时工作空间,其在 SAS 会话开始时创建,并在会话关闭时删除所有文件。 此工具将在执行期间启动和关闭新的 SAS 会话,因此不应在此工具中使用 WORK 库。

参数

标注说明数据类型
输入表

输入表。

Table View
输出 SAS 数据集 (libref.tablename)

输出 SAS 数据集。 以表单 libref.table 形式提供数据集,其中 librefSAS 库的名称,tableSAS 表的名称。

String
替换 SAS 数据集
(可选)

指定是否在输出中覆盖现有 SAS 数据集。

  • 选中 - 输出 SAS 数据集将被覆盖。
  • 未选中 - 输出 SAS 数据集不会被覆盖。 这是默认设置。

Boolean
使用属性域和子类型描述
(可选)

指定输出 SAS 数据集中是否包含域和子类型描述。

  • 选中 - 输出 SAS 数据集中将包含域和子类型描述。
  • 未选中 - 输出 SAS 数据集中不会包含域和子类型描述。 这是默认设置。

Boolean
将 SAS 数据集上传到 SAS 云分析服务 (CAS)
(可选)

指定将输出 SAS 数据集上传到 CAS,还是保存在本地 SAS 库中。

  • 选中 - 输出 SAS 数据集将被上传到 CAS
  • 未选中 - 输出 SAS 数据集将被保存在本地 SAS 库中。 这是默认设置。

Boolean
CAS 主机名 URL
(可选)

CAS 主机的 URL。

String
端口
(可选)

CAS 连接的端口。

Long
CAS 用户名
(可选)

CAS 连接的用户名。

String
密码
(可选)

CAS 连接的密码。 运行工具后,此密码被隐藏并且不可访问。

String Hidden
自定义会话配置文件
(可选)

文件指定 SAS 会话的自定义配置。 仅自定义本地或远程 SAS 部署需要该文件。

File

arcpy.conversion.TableToSAS(in_table, out_sas_dataset, {replace_sas_dataset}, {use_domain_and_subtype_description}, {use_cas_connection}, {hostname}, {port}, {username}, {password}, {custom_cfg_file})
名称说明数据类型
in_table

输入表。

Table View
out_sas_dataset

输出 SAS 数据集。 以表单 libref.table 形式提供数据集,其中 librefSAS 库的名称,tableSAS 表的名称。

String
replace_sas_dataset
(可选)

指定是否在输出中覆盖现有 SAS 数据集。

  • OVERWRITE输出 SAS 数据集将被覆盖。
  • NO_OVERWRITE输出 SAS 数据集不会被覆盖。 这是默认设置。
Boolean
use_domain_and_subtype_description
(可选)

指定输出 SAS 数据集中是否包含域和子类型描述。

  • USE_DOMAIN输出 SAS 数据集中将包含域和子类型描述。
  • NO_DOMAIN输出 SAS 数据集中不会包含域和子类型描述。 这是默认设置。
Boolean
use_cas_connection
(可选)

指定将输出 SAS 数据集上传到 CAS,还是保存在本地 SAS 库中。

  • USE_CAS输出 SAS 数据集将被上传到 CAS
  • LOCAL_SAS输出 SAS 数据集将被保存在本地 SAS 库中。 这是默认设置。
Boolean
hostname
(可选)

CAS 主机的 URL。

String
port
(可选)

CAS 连接的端口。

Long
username
(可选)

CAS 连接的用户名。

String
password
(可选)

CAS 连接的密码。 运行工具后,此密码被隐藏并且不可访问。

String Hidden
custom_cfg_file
(可选)

文件指定 SAS 会话的自定义配置。 仅自定义本地或远程 SAS 部署需要该文件。

File

代码示例

TableToSAS 示例 1(Python 窗口)

以下 Python 窗口脚本演示了如何在本地 SAS 安装中使用 TableToSAS 函数。

import arcpy
arcpy.conversion.TableToSAS("MyData", "sasuser.MySASData", "OVERWRITE",
                            "USE_DOMAIN", "LOCAL_SAS")
TableToSAS 示例 2(独立脚本)

以下独立 Python 脚本演示了如何通过与 CAS 的连接使用 TableToSAS 函数。

# Import system modules
import arcpy
import getpass

# Provide tool parameters
in_table = "MyData"
out_SASDS = "casuser.MySASData"
replace_output = "OVERWRITE"
field_domains = "USE_DOMAIN"
connection = "USE_CAS"
hosturl = https://XXX.vdp.sas.com/XXX-XXXXX-default-http/ 
port = 100
username = "CAS_user"

# Provide password securely
password = getpass.getpass()

try:
    # Set the workspace and run the tool.
    arcpy.env.workspace = r"C:\\TableToSAS\\MyData.gdb"
    arcpy.conversion.TableToSAS(in_table, out_SASDS, replace_output, 
                                field_domains, connection, hosturl, port, 
                                username, password)
except arcpy.ExecuteError:
    # If an error occurred when running the tool, print the error message.
    print(arcpy.GetMessages())

环境

此工具不使用任何地理处理环境。

许可信息

  • Basic: 是
  • Standard: 是
  • Advanced: 是

相关主题