什么定义了Teradata“数据定义声明”

时间:2017-08-03 10:44:28

标签: database teradata tableau volatile

我的问题的原因是我有一个SQL脚本,它使用易失性表(我没有创建常规表的权限)在多个阶段构建结果。我创建了我的第一个volatile表来尝试保持脚本的部分模块化,然后第二个表使用第一个,第三个和第二个的结果集,然后继续使用。

然后我使用Tableau构建我的数据的可视化,将脚本的create volatile table部分放在Initial SQL部分中,然后我只是从volatile中做select我的请求中的表。问题是Teradata ODBC客户端返回错误:

  

3576数据定义无效,除非是单独的

每次尝试这个时我都没有这个问题,所以我想知道是什么促使这种情况发生,所以我想知道,Teradata中的“数据定义语句”是什么。有时我使用这种方法,它工作正常,其他人没有,我似乎无法弄明白。

1 个答案:

答案 0 :(得分:3)

DDL语句显然是CREATEDROP,还有COLLECT STATISTICSDATABASE ...命令。

每个DDL语句必须是单独提交的=具有单个语句的请求=独立事务。

如果您有权访问QueryLog,则可能会检查发送给Teradata的实际SQL,从而导致该错误。