0

我一直在使用 SAS 9.3 宏 INDTD_PUBLISH_FORMATS 在 Teradata 14 中发布格式。一切正常,但我看不到已发布格式的存储位置。该宏创建一系列 Teradata 函数 (SAS_PUTx),在 SAS 调用格式时调用这些函数。通过函数的外部名称参数,有一条回到 SAS 服务器上 WORK 目录的路径,我可以看到那里的格式。但是,即使我删除了这个目录,格式仍然可以正常工作。我不知道 Teradata 将它们存储在哪里。它会在某处缓存它们吗?SAS 支持似乎无法复制这种行为。谢谢

4

1 回答 1

2

%INDTD_PUBLISH_FORMATS 宏会将格式作为 UDF 发布到 Teradata 数据库上。查看“发布过程概述”。宏执行以下任务:

1) 创建 .h 和 .c 文件,这是构建 SAS_PUT() 函数所必需的。

2) 生成在 Teradata EDW 中注册 SAS_PUT() 函数所需的 Teradata 命令脚本。

3) 使用 SAS/ACCESS Interface to Teradata 执行脚本并将文件发布到 Teradata EDW。

您可以尝试在 teradata 上使用 SHOW FUNCTION SAS_PUT 来检查该功能。尝试浏览“格式发布宏示例”部分。

此外,以下链接提供了有关整个发布过程如何发生的信息:SAS(R) 9.3 In-Database Products: User's Guide, Fourth Edition -> How it Works

希望这可以帮助。

谢谢!

于 2015-03-10T19:04:58.417 回答