创建易失表和插入数据时出现问题-Teradata

时间:2020-08-21 14:52:51

标签: sql teradata

每当我尝试执行时,都会收到错误3707,告诉我它在单词'I_SYS_CLM'和integer关键字之间期望像名称或Unicode分隔标识符之类的东西。我尝试删除I_SYS_CLM之后的整数,但没有帮助

创建挥发表ep_three,没有日志

( I_SYS_CLM  integer  

 , N_COV VARCHAR(10) 

 , Q_DAY_DBY integer

 , Q_DAY_PRC_ELM integer

 , Q_DAY_BFT integer)

        ON COMMIT PRESERVE ROWS;

INSERT INTO ep_three

SELECT

 I_SYS_CLM  integer  

 , N_COV 

 , Q_DAY_DBY 

 , Q_DAY_PRC_ELM 

 , Q_DAY_BFT 

FROM pearl_p.TLTC921_SMY

SELECT 

 I_SYS_CLM

 , N_COV

 , Q_DAY_DBY 

 , Q_DAY_PRC_ELM 

 , Q_DAY_BFT 

FROM pearl_p.TLTC921_SMY

1 个答案:

答案 0 :(得分:1)

两个问题:

  1. 您的select语句中包含关键字integer,这是胡说八道。自己运行SELECT部分​​,并修复错误以在将来解决。
  2. 您有两次列出相同的SELECT语句,这没有任何意义。

相反,只是:

CREATE VOLATILE TABLE ep_three
    ,NO LOG (
    I_SYS_CLM INTEGER
    ,N_COV VARCHAR(10)
    ,Q_DAY_DBY INTEGER
    ,Q_DAY_PRC_ELM INTEGER
    ,Q_DAY_BFT INTEGER
    ) ON

COMMIT PRESERVE ROWS;

INSERT INTO ep_three
SELECT I_SYS_CLM 
    ,N_COV
    ,Q_DAY_DBY
    ,Q_DAY_PRC_ELM
    ,Q_DAY_BFT
FROM pearl_p.TLTC921_SMY;