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