teradata - 替换存储过程失败,易失性表不存在
问题描述
此过程已存在于数据库中,但是当我在进行更改后尝试替换它时抛出错误 volatile table doesn't exist。你能帮忙找出问题吗?迁移到 QA 环境时失败。
Statement 2: REPLACE PROCEDURE Failed.
Output directed to Answer window
SPL5000:W(L78), E(3807):Object 'VT_SEG' does not exist.
SPL1027:E(L165), Missing/Invalid SQL statement'E(3807):Object 'VT_SEG' does not exist.'.
SPL5000:W(L169), E(3807):Object 'VT_SEG' does not exist.
REPLACE PROCEDURE DB.SP_PNL ( IN P_EXTRACTSTARTDATE VARCHAR(35))
BEGIN
VT_SEG:BEGIN
DECLARE CONTINUE HANDLER FOR SQLEXCEPTION
BEGIN
---- ERROR HANDLING HERE ----
END ;
DROP TABLE "VT_SEG";
END VT_SEG;
--LOAD THE TOPLINE DATA
CREATE MULTISET VOLATILE TABLE VT_SEG AS
( SELECT TIER
, JOB_ROLE
, REGION
, LOC_ID
, LOCATION
, WK_NUM
, YR_NUM+1 AS YR_NUM
, cast(sum(coalesce(VOL_RAW_CASES,0) ) as decimal(38,9)) as VOL_RAW_CASES
FROM DB1.VOL
GROUP BY 1,2,3,4,5,6,7
) WITH DATA
primary index (TIER,JOB_ROLE,LOC_ID,WK_NUM,YR_NUM)
ON COMMIT PRESERVE ROWS;
end;
解决方案
推荐阅读
- swift - SwiftUI 显示不会在子链接更改状态时更新
- javascript - 如何在返回的 Promise 中引用数据
- json - 如何在hadoop hdfs中解压文件
- php - PHPMailer - 跳过向无效地址发送电子邮件
- powershell - 如何使用 FFMPEG 和 powershell 自动裁剪视频
- elasticsearch - 如何在 nushell 中过滤 group-by 的 value 列中的行数?
- opengl - 如何使用 WSL (Ubuntu 20.04) 运行 OpenGL 程序?
- php - 当我设置测试的 setUp 方法时,没有结果
- batch-file - WiX 自定义操作 SetProperty 的命令行参数语法
- python - 使用 SPACY 的句子中第一个单词的 POS 计数